Idiomas: Português (Brasil) · English · Español · Français
Extensão para o VS Code que gerencia as dependências Python da .venv do projeto, no espírito do gerenciador de pacotes do PyCharm. Usa dois backends com detecção automática:
- uv (nativo) — se
uvestiver noPATHe existirpyproject.tomlna raiz - pip — caso contrário (
requirements.txt+python -m venv/pip)
Status: v1.0.0 — release estável (+ backend uv em desenvolvimento). Checklist manual: docs/superpowers/plans/manual-checklist.md.
- Detecta o backend automaticamente:
uvno PATH +pyproject.toml→ uv nativo; senão → pip - Detecta
requirements.txtoupyproject.tomlna raiz da pasta aberta - Notifica e sugere instalar/sincronizar dependências somente se ainda não existir
.venv - Se não existir
.venv, cria (pip: interpretador da extensão Python; uv:uv venv) - Sincroniza o manifesto:
pip install -r requirements.txtouuv sync - Mostra os pacotes na Activity Bar (webview com busca)
- Instalar / desinstalar / atualizar pacotes avulsos (
pip install/uv add, etc.) - Após instalar com pip, pergunta se deve atualizar o
requirements.txtcompip freeze(com uv,uv addjá edita opyproject.toml— sem diálogo de freeze) - Logs detalhados no canal Python Dependencies Manager
Quando o modo uv está ativo, a extensão usa a CLI nativa do uv:
| Operação | Comando |
|---|---|
| Criar ambiente | uv venv |
| Sincronizar dependências | uv sync |
| Adicionar pacote | uv add |
| Remover pacote | uv remove |
| Atualizar pacote | uv lock --upgrade-package + uv sync |
| Listar pacotes | uv pip list --format=json (única exceção: listagem usa uv pip) |
- Visual Studio Code (ou fork compatível)
- Extensão Python instalada
- Interpretador Python selecionado (
Python: Select Interpreter) - Módulo venv disponível para o fluxo pip (Debian/Ubuntu:
sudo apt install python3-venvoupython3.12-venv) - Projeto aberto como uma pasta (raiz com
requirements.txt/pyproject.toml/.venv) - Opcional — uv: uv no
PATHpara projetos compyproject.toml(sem uv, o backend pip é usado)
- Abra a pasta do projeto com
requirements.txtoupyproject.tomlna raiz e sem.venv - Aparece a notificação para instalar/sincronizar
- Escolha:
- Install / Sync — cria
.venvse faltar e instala as dependências - Not now — não pergunta de novo nesta sessão
- Don’t ask again — não pergunta de novo neste workspace
- Install / Sync — cria
Se já existir .venv, a notificação não é exibida. O comando manual continua disponível.
Na Activity Bar → Python Dependencies:
- Filtro fixo no topo: filtra apenas os pacotes já instalados na
.venv - Botões Update / Remove em cada linha
- Toolbar: Refresh, Install Package (+), e o comando de sync do backend ativo
Aberto pelo + Install Package (toolbar ou Command Palette) — separado do filtro da lista:
- Busca no PyPI (ex.:
django-→ ≥50 resultados) - Última versão à direita, resumo abaixo
- Seleção múltipla (marque vários) → Enter instala todos de uma vez
- Texto livre (
name==1.0, git, etc.) - Depois (somente pip): opção de
pip freeze→requirements.txt
Categoria Python Dependencies:
| Comando | Descrição | Quando aparece |
|---|---|---|
Install from requirements.txt |
Fluxo pip completo (pip install -r) |
Projetos sem modo uv |
Sync dependencies |
Fluxo uv (uv venv + uv sync) |
uv no PATH + pyproject.toml |
Refresh Packages |
Recarrega a lista da .venv |
Sempre |
Install Package |
Busca PyPI multi-select + install/add | Sempre |
- Notificações de progresso durante venv/pip/uv
- View → Output → Python Dependencies Manager (logs com timestamp e escopo:
flow,venv,pip,uv,process, etc.)
Dentro do escopo: pasta única; backends pip (requirements.txt) e uv nativo (pyproject.toml + uv no PATH); busca PyPI; freeze opcional no pip.
Fora (por enquanto): monorepo, Poetry/conda, sync fino linha a linha no manifesto, “update all”, forçar backend por setting, workspaces uv com extras/dev groups na UI.
Design MVP: docs/superpowers/specs/2026-07-16-python-dependencies-manager-design.md.
Design uv: docs/superpowers/specs/2026-07-17-uv-native-package-manager-design.md.
pnpm install
pnpm run compile
# ou: pnpm run watchNo VS Code: F5 (Run Extension).
Pasta de teste: fixtures/sample-project/ (com requirements.txt).
pnpm run lint
pnpm test- Abra este repositório no VS Code
pnpm install&&pnpm run compile- F5 → janela Extension Development Host
- File → Open Folder →
fixtures/sample-project(não a raiz da extensão) - Extensão Python + Select Interpreter
- Notificação (se não houver
.venv) ou comando Install from requirements.txt / Sync dependencies - Activity Bar → Python Dependencies
- Output → Python Dependencies Manager
| Sintoma | Causa comum | O que fazer |
|---|---|---|
| F5 trava no preLaunchTask | task watch |
F5 usa npm: compile |
| View vazia | extensão não ativou | Abrir pasta com requirements.txt/pyproject.toml/.venv ou rodar um comando |
| Erro de venv / ensurepip | falta python3-venv |
sudo apt install python3.12-venv |
| Sem interpretador | Python extension | Instalar Python e selecionar interpretador |
| Projeto pyproject mas usa pip | uv não está no PATH |
Instalar uv ou aceitar o backend pip |
| Avisos ConfigCat no log | VS Code / GitHub | Ignorar — não são desta extensão |
Empacotar:
pnpm run package
# npx @vscode/vsce packagesrc/
extension.ts # activate, commands, auto-prompt
packageOps.ts # Template Method (progress, erros, refresh)
packageManager/ # Strategy: detect, resolve, PipManager, UvManager
packagesWebview.ts # view + busca PyPI / lista instalados
packageInstallQuickPick.ts
pypiClient.ts # índice simple + JSON do PyPI
pipService.ts / venvService.ts / preferences.ts / ...
docs/superpowers/specs/ # design
docs/superpowers/plans/ # plano + checklist
media/ # ícone da Activity Bar
fixtures/sample-project/ # projeto de teste
Ver CHANGELOG.md.
MIT (campo license no package.json).