Install
openclaw skills install python-venvPython environment management skill. Automatically detect project type and existing environments, recommend based on popularity. Minimize interruptions, only ask when necessary.
openclaw skills install python-venv| Priority | Tool | Best For |
|---|---|---|
| 🥇 | uv | New projects, fast installs |
| 🥈 | pip | Compatibility first |
| 🥉 | conda | Data science, specific versions |
| 4 | venv | Built-in, no extra install |
| 5 | poetry | Existing poetry.lock |
| 6 | pipenv | Existing Pipfile (declining) |
┌─────────────────────────────────────┐
│ Detect project dependency files │
└─────────────────────────────────────┘
↓
┌─────────┴─────────┐
↓ ↓
Clear decision Unclear
↓ ↓
Use directly Detect existing env
↓
┌─────┴─────┐
↓ ↓
Has env No env
↓ ↓
Reuse Assess complexity
↓
┌─────────┴─────────┐
↓ ↓
Simple task Needs deps
↓ ↓
System Python Recommend uv/conda
When these files are detected, use the corresponding tool directly:
| Detected File | Execute |
|---|---|
uv.lock exists | uv sync or uv pip install -r requirements.txt |
poetry.lock exists | poetry install |
environment.yml exists | conda env create -f environment.yml |
Pipfile.lock exists | pipenv install |
# Priority: uv venv > conda > venv
# 2.1 Detect uv virtual environment
ls -la .venv/ 2>/dev/null && uv pip list 2>/dev/null | head -3
# 2.2 Detect conda environment
conda info --envs 2>/dev/null | grep "*" || echo $CONDA_PREFIX
# 2.3 Detect standard venv
ls -la venv/ .venv/ env/ 2>/dev/null
# 2.4 If exists → Reuse (activate and run commands)
Reuse Example:
Detected existing .venv/ directory
→ Activate: source .venv/bin/activate
→ Run: uv pip install <package>
| Scenario | Action |
|---|---|
| Stdlib only, no 3rd party | System Python (python3) |
| Simple pip install test | System Python (temp) |
| Has requirements.txt | Recommend uv > pip > venv |
| Has pyproject.toml | Recommend uv > pip |
| Multi-file project, needs isolation | Recommend uv |
✅ Ask:
❌ Don't Ask:
First: uv
├── uv venv (create)
├── uv pip install (install)
└── uv sync (sync)
Backup: pip
├── python3 -m venv .venv
└── pip install
Special: conda
├── conda create -n envname python=x.x
└── conda env create
# Check available tools
which uv
which conda
which pip
which python3
# Check project files
ls -la *.lock pyproject.toml requirements.txt environment.yml Pipfile 2>/dev/null
# Check existing environments
ls -la .venv/ venv/ env/ 2>/dev/null
conda info --envs 2>/dev/null
# Check current environment
echo $VIRTUAL_ENV
echo $CONDA_PREFIX
🔍 Detection result:
- Project file: pyproject.toml
- Existing env: None
- Recommended: uv (fastest)
Running: uv pip install <package>
🔍 Detection result:
- Project file: requirements.txt
- Existing env: None
- Recommended: uv
Available options:
1) uv (recommended) - faster
2) pip - better compatibility
3) venv - uses stdlib
4) conda - if specific version needed
Enter option or press Enter to use recommended:
| Action | uv | pip | conda | venv |
|---|---|---|---|---|
| Create env | uv venv | - | conda create | python3 -m venv |
| Install pkg | uv pip install | pip install | conda install | pip install |
| Install deps | uv sync | pip install -r | conda env create | pip install -r |
| Activate | (auto) | (auto) | conda activate | source venv/bin/activate |
"Do more, ask less" - Execute directly when you can determine, only ask when truly unclear.