Skip to content

原文(日本語訳)

Python仮想環境の自動アクティベーションを追加し、pythonpipコマンドが正しいインタープリターを使用するようになりました(claudeCode.usePythonEnvironment設定で構成可能)

原文(英語)

[VSCode] Added automatic Python virtual environment activation, ensuring python and pip commands use the correct interpreter (configurable via claudeCode.usePythonEnvironment setting)

概要

VS Code拡張でPythonプロジェクトを扱う際、仮想環境が自動的にアクティベートされ、pythonpipコマンドが正しいインタープリターを使用するようになりました。これにより、依存関係の管理が容易になります。

基本的な使い方

VS Code設定で有効化します。

json
// settings.json
{
  "claudeCode.usePythonEnvironment": true
}

設定後、Claudeが自動的に仮想環境を検出して使用します。

bash
# VS Code の Claude Code 拡張内で
claude
> 依存関係をインストールしてください

# 自動的に仮想環境の pip を使用
python -m pip install -r requirements.txt
# → .venv/bin/pip が使用される

実践例

venvプロジェクトでの依存関係管理

bash
# プロジェクトディレクトリに .venv が存在する場合
claude
> FastAPI をインストールしてください

# 自動的に仮想環境がアクティベートされる
# .venv/bin/pip install fastapi が実行される

Pythonスクリプトの実行

bash
claude
> main.py を実行してください

# 仮想環境のPythonインタープリターが使用される
# .venv/bin/python main.py

condaプロジェクトの扱い

bash
# conda環境も検出される
claude
> pytest を実行してください

# conda環境のpytestが使用される

複数の仮想環境が存在する場合

bash
# VS Codeで選択されているPython環境が優先される
# Command Palette > Python: Select Interpreter で選択

claude
> 現在のPython環境を確認してください

> which python
# → VS Codeで選択した環境のパスが表示される

設定オプション

自動アクティベーションを無効化

json
{
  "claudeCode.usePythonEnvironment": false
}

無効化すると、システムのPythonが使用されます。

プロジェクトごとの設定

json
// .vscode/settings.json (プロジェクト固有)
{
  "claudeCode.usePythonEnvironment": true,
  "python.defaultInterpreterPath": "${workspaceFolder}/.venv/bin/python"
}

利点

依存関係の分離

bash
# プロジェクトAの環境
cd /project-a
claude
> pandas をインストール
# → /project-a/.venv に分離してインストール

# プロジェクトBの環境
cd /project-b
claude
> pandas をインストール
# → /project-b/.venv に分離してインストール

一貫した実行環境

bash
# チーム全員が同じPythonバージョンと依存関係を使用
claude
> テストを実行してください

# requirements.txt の正確なバージョンが使用される

注意点

  • VS Code専用: この機能はVS Code拡張でのみ利用可能です(CLI版では別途venvをアクティベート)
  • 環境検出: .venvvenvenv、conda環境などが自動的に検出されます
  • 手動アクティベーション: 必要に応じて、手動でアクティベートすることも可能です
  • Windowsの注意点: Windows環境では、PowerShellのActivate.ps1スクリプトが正しく機能することを確認してください
  • パフォーマンス: 環境のアクティベーションにわずかな時間がかかる場合があります

トラブルシューティング

仮想環境が検出されない場合

json
// settings.json で明示的にパスを指定
{
  "python.defaultInterpreterPath": "${workspaceFolder}/.venv/bin/python"
}

Windowsでの問題

bash
# PowerShell実行ポリシーを確認
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

# 手動でアクティベート
.\.venv\Scripts\Activate.ps1
claude

関連情報