关于 uv-tool-management
为 Python 开发者提供使用 uv 安装和管理全局命令行工具的速查指南,涵盖临时运行、版本管理和独立环境。
主要功能
- 01安装和卸载全局工具
- 02临时运行命令行工具
- 03列出与升级已安装工具
- 04指定工具版本
- 05隔离各工具的环境
适用场景
- 01跨项目安装 Python 开发工具
- 02临时调用无需安装的工具
- 03检查或升级已安装工具
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ laurigates/ claude-plugins --skill uv-tool-management安装后在 Claude Code 中输入/uv-tool-management确认已加载。
附带文件REFERENCE.md
详细介绍
UV 工具管理
使用 UV 安装和管理全局 Python 工具的快速参考(pipx 的替代方案)。
何时使用此技能
| 在以下情况下使用此技能…… | 在以下情况下改用针对性更强的同级技能…… |
|---|---|
使用 uv tool install 安装全局 CLI 工具(ruff、black、ipython),替代 pipx | 在项目的 venv 中运行脚本——使用 uv-run |
通过 uvx tool 运行一次性 CLI 命令,无需安装 | 将工具添加为项目开发依赖——使用 uv-project-management |
| 列出、升级或卸载全局安装的工具 | 固定工具运行时使用的 Python 版本——使用 uv-python-versions |
此技能的适用场景
- 全局安装命令行工具(类似 pipx)
- 管理工具安装和更新
- 无需安装即可临时运行工具
- 列出和移除已安装的工具
- 管理工具版本
快速参考
安装工具
# Install tool globally
uv tool install ruff
uv tool install black
uv tool install pytest
# Install specific version
uv tool install [email protected]
uv tool install 'pytest>=7.0'
# Install from Git
uv tool install git+https://github.com/astral-sh/ruff
# Install with extras
uv tool install 'mkdocs[i18n]'
uv tool install 'fastapi[all]'
运行工具
# Run without installing (ephemeral)
uvx pycowsay "hello world"
uvx ruff check .
uvx black --check .
# uvx is alias for:
uv tool run pycowsay "hello world"
# Run with specific version
uvx [email protected] check .
# Run from Git
uvx git+https://github.com/user/tool script.py
管理工具
# List installed tools
uv tool list
# Update tool
uv tool install ruff --reinstall
uv tool upgrade ruff
# Remove tool
uv tool uninstall ruff
# Remove all tools
uv tool uninstall --all
工具信息
# Check tool version
ruff --version
# List tool binaries
uv tool list --verbose
# Show tool location
which ruff
# ~/.local/bin/ruff (Linux)
# ~/Library/Application Support/uv/bin/ruff (macOS)
uvx 与 uv tool run 的区别
这些命令等效:
uvx ruff check .
uv tool run ruff check .
uvx 是临时执行工具的便捷简写。
安装位置
工具目录
# Linux
~/.local/share/uv/tools/
# macOS
~/Library/Application Support/uv/tools/
# Windows
%LOCALAPPDATA%\uv\tools\
二进制文件(可执行文件)
# Linux
~/.local/bin/
# macOS
~/Library/Application Support/uv/bin/
# Windows
%LOCALAPPDATA%\uv\bin\
添加到 PATH:
# Add to ~/.bashrc or ~/.zshrc
export PATH="$HOME/.local/bin:$PATH"
常用工具
# Code quality
uv tool install ruff
uv tool install black
uv tool install ty
# Documentation
uv tool install mkdocs
uv tool install sphinx
# Testing
uv tool install pytest
uv tool install tox
# Build tools
uv tool install build
uv tool install twine
# Utilities
uv tool install httpie
uv tool install pipx
uv tool install cookiecutter
UV 工具与项目依赖
以下情况使用 uv tool:
- 命令行应用
- 全局开发工具
- 跨项目使用的实用工具
以下情况使用 uv add:
- 特定项目的依赖
- 在代码中导入的库
- 特定项目中的开发依赖
# Global tool (any project)
uv tool install ruff
# Project dependency (one project)
uv add --dev ruff
工具隔离
每个工具都有自己的虚拟环境:
# Each tool is isolated
~/.local/share/uv/tools/
├── ruff/ # Isolated environment for ruff
├── black/ # Isolated environment for black
└── pytest/ # Isolated environment for pytest
# No dependency conflicts between tools
常见工作流
配置开发工具
# Install common development tools globally
uv tool install ruff
uv tool install ty
uv tool install pytest
uv tool install ipython
# Now available in any project
ruff check .
ty check src/
pytest
ipython
一次性使用工具
# Run without installing
uvx pycowsay "Temporary tool!"
uvx httpie https://api.github.com
# No cleanup needed
替代 pipx
# Old (pipx)
pipx install black
pipx run pycowsay "hello"
# New (uv)
uv tool install black
uvx pycowsay "hello"
主要特性
- 快速:速度比 pipx 快 10-100 倍
- 隔离:每个工具都在独立环境中
- 临时运行:无需安装即可运行工具
- 版本控制:固定工具版本
- Git 支持:从代码仓库安装
另请参阅
uv-project-management- 项目专属依赖uv-python-versions- 工具使用的 Python 版本python-code-quality- 使用 ruff、ty、black
参考资料
- 官方文档:https://docs.astral.sh/uv/guides/tools/
- 工具目录:使用
uv cache dir查找缓存位置 - 详细指南:参见此技能目录中的 REFERENCE.md
评论
支持 Markdown