managing-environments について
managing-environmentsは、venvとcondaでのPythonパッケージ導入や開発環境の設定を案内するスキルです。導入前の環境確認とユーザーへの確認を重視し、環境選択やトラブルシューティングも扱います。
主な機能
- 01有効なvenv・conda環境の検出
- 02インストール前の環境確認
- 03環境未有効時の警告
- 04venvまたはcondaの選択案内
- 05インストールとトラブル対応の資料
活用シーン
- 01Python依存パッケージの安全な導入
- 02Pythonプロジェクト環境の設定
- 03インポートやパッケージ問題の診断
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ delphine-l/ claude_global --skill managing-environmentsインストール後、Claude Code で/managing-environmentsを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
best-practices-and-scenarios.mdinstallation-patterns.mdtroubleshooting-and-examples.md詳細
開発環境の管理
Python 仮想環境(venv)と conda 環境を扱うためのガイドラインです。このスキルでは、作業を進める前に必ずアクティブな環境を確認し、ユーザーの了承を得ることで、安全で整理されたパッケージのインストールを実現します。
このディレクトリにある関連ファイル:
installation-patterns.md- venv と conda のインストールコマンド、チャンネルの優先順位、TOS エラーへの対処best-practices-and-scenarios.md- よくあるシナリオ、ベストプラクティス、再開可能なデータ取得のパターンtroubleshooting-and-examples.md- よくある問題のトラブルシューティングと具体例
このスキルを使う場面
次の場合はいつでも、このスキルを有効にしてください。
- Python パッケージやツールをインストールする場合
- ユーザーから依存関係のインストールを依頼された場合
- 新しい Python プロジェクトをセットアップする場合
- インポートやパッケージの問題をデバッグする場合
- Python 開発全般に取り組む場合
基本原則
- インストールの前に必ず環境の状態を確認する
- 使用する環境を必ずユーザーに確認する
- 環境の確認なしにインストールしない
- アクティブな環境がない場合は警告する
- 適切な環境の種類をユーザーが選べるよう支援する
環境検出のワークフロー
ステップ 1:環境の状態を確認する
**インストールコマンドを実行する前に必ず、**次の確認を実行します。
# Check for active venv
echo "Python executable: $(which python)"
echo "Virtual environment: $VIRTUAL_ENV"
# Check for conda environment
echo "Conda environment: $CONDA_DEFAULT_ENV"
conda info --envs 2>/dev/null || echo "Conda not available"
ステップ 2:結果を解釈する
シナリオ A:venv がアクティブ
Python executable: /path/to/project/.venv/bin/python
Virtual environment: /path/to/project/.venv
Conda environment:
-> Python venv がアクティブです
シナリオ B:conda 環境がアクティブ
Python executable: /path/to/miniconda3/envs/myenv/bin/python
Virtual environment:
Conda environment: myenv
-> Conda 環境がアクティブです
シナリオ C:環境なし(システム Python)
Python executable: /usr/bin/python
Virtual environment:
Conda environment:
-> アクティブな環境がありません。ユーザーに警告してください。
シナリオ D:両方が検出された場合(まれ)
Virtual environment: /path/to/.venv
Conda environment: base
-> 両方がアクティブです。which python の結果を優先しますが、ユーザーに確認してください。
ステップ 3:ユーザーに確認する
続行する前に必ず質問してください。
I've detected the following environment:
- Environment type: [venv/conda/none]
- Location: [path]
- Python version: [version]
Is this the environment you want me to use for installing [package/tool]?
続行する前に、ユーザーの確認を待ってください。
環境の種類ごとのインストールコマンドについては、installation-patterns.md を参照してください。
アクティブな環境がない場合 ― 警告と計画
環境が検出されない場合、インストールを続行しないでください。 代わりに、次の手順に従ってください。
ステップ 1:ユーザーに警告する
WARNING: No Python environment detected!
You're currently using system Python:
- Location: [path to python]
- Version: [version]
Installing packages to system Python can:
- Cause conflicts with system packages
- Require sudo/admin privileges
- Make projects difficult to reproduce
- Break system tools that depend on specific versions
I recommend creating a virtual environment first.
ステップ 2:環境の種類を選べるよう支援する
判断フロー:
Question: What type of project are you working on?
A. Pure Python project (web dev, scripting, etc.)
-> Recommend: Python venv
-> Fast, lightweight, standard Python tool
B. Data science / Scientific computing
-> Ask: Do you need non-Python dependencies? (R, C libraries, etc.)
B1. Yes (or using packages like numpy, scipy, pandas, etc.)
-> Recommend: Conda
-> Better binary dependency management
B2. No, only Python packages
-> Recommend: Python venv
-> Simpler and faster
C. Bioinformatics / Genomics
-> Recommend: Conda (with bioconda channel)
-> Most tools available via bioconda
-> Manages complex dependencies well
D. Galaxy tool development
-> Recommend: Conda
-> Galaxy uses conda for tool dependencies
-> Direct compatibility
ステップ 3:環境の作成を提案する
venv の場合:
python -m venv .venv
source .venv/bin/activate # Linux/Mac
which python
conda の場合:
conda create -n project-name python=3.11
conda activate project-name
conda info --envs
which python
環境の選択ガイドライン
Python venv を使う場合:
- 純粋な Python プロジェクト
- 依存関係が単純(すべて PyPI から入手可能)
- 一般的な Web 開発(Django、Flask、FastAPI)
- コンパイル済み拡張機能や C ライブラリが不要
- 環境をできるだけ速く作成したい
- Python 3.3 以降を使用する
メリット: 軽量で高速、Python に組み込まれており、すべてのプラットフォームで動作します。 デメリット: Python 以外の依存関係の管理が難しく、バイナリパッケージでシステムライブラリが必要になる場合があります。
Conda 環境を使う場合:
- データサイエンス/機械学習
- 科学技術計算(numpy、scipy、pandas)
- バイオインフォマティクス/ゲノミクス
- 特定の Python バージョンが必要
- 言語をまたぐ依存関係(R、C++ など)
- Galaxy ツールの開発
- 複雑なバイナリ依存関係
メリット: バイナリ依存関係を管理でき、言語をまたいだ利用に対応し、科学計算用パッケージに適しており、Python のバージョンも管理できます。 デメリット: venv より遅く、ディスク容量を多く使い、conda のインストールが必要です。
クイックリファレンス
環境の検出コマンド
# Check what's active
which python
echo $VIRTUAL_ENV
echo $CONDA_DEFAULT_ENV
# Python version
python --version
# Installed packages
pip list # for pip
conda list # for conda
# Environment location
pip show package-name # shows where package is installed
環境の有効化コマンド
# venv
source .venv/bin/activate # Linux/Mac
.venv\Scripts\activate # Windows
# conda
conda activate environment-name
# Deactivation
deactivate # venv
conda deactivate # conda
よくあるシナリオ、ベストプラクティス、トラブルシューティング、具体例については、このディレクトリにある関連ファイルを参照してください。
まとめ
必ず次の点を覚えておいてください。
- インストールの前に環境を確認する
- アクティブな環境をユーザーに示す
- 続行する前にユーザーに確認する
- アクティブな環境がない場合は警告する
- 適切な環境の種類を選べるよう支援する
- 再現性を確保するため、環境のセットアップを記録する
次のことはしないでください。
- 環境を確認せずにインストールする
- ユーザーがシステム Python の使用を希望していると決めつける
- ユーザーの確認なしにインストールする
- conda の base 環境に関する警告を省略する
このスキルにより、すべてのプロジェクトでクリーンかつ再現可能で、競合のない Python 環境を実現します。