Token导航 LogoToken导航TokenDH.com
开发执行命令github未标认证来源可访问许可证需确认审计异常

uv-tool-managementuv 工具管理

Agent Skill

uv-tool-management 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

190

周安装

8

GitHub Stars

1

下载量

67
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:uv-tool-management(uv 工具管理)
来源仓库:https://github.com/dawiddutoit/custom-claude
仓库路径:skills/uv-tool-management
安装命令:
npx skills add https://github.com/dawiddutoit/custom-claude --skill uv-tool-management
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/dawiddutoit/custom-claude --skill uv-tool-management

简介

用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息。

  • 适合在 Codex、Claude、Cursor、Gemini CLI 中围绕仓库状态、代码变更或协作事项进行整理。
  • 通过 npx skills add 命令从指定 GitHub 仓库安装并使用。
  • 安装前需确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写操作。
  • uv-tool-management 属于开发类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

uv Tool Management

Purpose

This skill teaches you how to efficiently manage Python command-line tools using uv, including running tools on-demand without installation, installing persistent tools globally, managing versions, and understanding when to use tools versus project dependencies.

Quick Start

Run any CLI tool without installing it:

# Run ruff (Python linter) once without installation
uvx ruff check .

# Equivalent longer form
uv tool run ruff check .

# Install a tool permanently for repeated use
uv tool install ruff

# Then run the installed tool
ruff check .

Instructions

Step 1: Understand the Tool Management Landscape

uv replaces pipx for tool management. There are three main approaches:

uvx (temporary execution): Run a tool once without installation

  • Tool is fetched, cached, and executed in an isolated environment
  • No modification to your system
  • Ideal for: occasional use, trying tools, CI/CD where tools aren't needed repeatedly

uv tool install (persistent installation): Install a tool for repeated use

  • Tool is installed globally in a dedicated environment
  • Available in PATH after installation
  • Ideal for: tools you use regularly (linters, formatters, test runners)

uv run (project environment): Run tools that need access to your project

  • Tools run within your project's virtual environment
  • Can access your project's installed packages
  • Ideal for: testing, linting, formatting your project code

Step 2: Choose Between uvx and uv tool install

Use uvx (ephemeral) when:

  • Running a tool for the first time to test it
  • Tool is used rarely or on-demand
  • You want no installation footprint
  • Running in CI/CD pipelines (cleaner, no persistent state)
  • Tool has conflicting dependencies with other tools
# Try a new tool without committing to it
uvx httpie https://api.github.com/users/github

# Run a tool on-demand in CI
uvx mypy src/

# Run tool from different package
uvx --from httpie http https://example.com

Use uv tool install (persistent) when:

  • Tool is part of your regular workflow
  • Team uses it consistently (document in README)
  • Tool provides utility functions beyond single invocation
  • You want faster execution (no download overhead each time)
  • Tool is referenced in project docs or scripts
# Install tools you use daily
uv tool install ruff
uv tool install black
uv tool install mypy

# Then run directly without prefix
ruff check .
black --check src/
mypy src/

Use uv run (project environment) when:

  • Running tests, linters, or formatters on your project
  • Tool needs access to project dependencies
  • Running from within project directory
  • Tool is listed in project's dev dependencies
# Test runner needs access to project (test libraries, modules)
uv run pytest tests/

# Linter running on project code
uv run mypy src/

# Format project code
uv run black src/

Step 3: Run Tools with uvx

Basic execution without arguments:

uvx ruff check .
uvx black --check src/

Specify exact version:

# Run specific version of a tool
uvx ruff@0.3.0 check .

# Use version constraint
uvx --from 'ruff>=0.3.0,<0.4.0' ruff check .

Run tools from different packages:

# httpie is in package 'httpie', command is 'http'
uvx --from httpie http https://api.github.com

# mkdocs is in 'mkdocs', command is 'mkdocs'
uvx mkdocs serve

Include optional dependencies (extras):

# mypy with optional faster caching
uvx --from 'mypy[faster-cache]' mypy src/

# mkdocs with material theme
uvx --with mkdocs-material mkdocs serve

Run with specific Python version:

# Run tool with Python 3.10 (useful for compatibility testing)
uvx --python 3.10 ruff check .

# Ensure tool runs on minimum supported version
uvx --python 3.9 pytest tests/

Run from git repository:

# Install directly from GitHub
uvx --from git+https://github.com/httpie/cli httpie

Step 4: Install and Manage Persistent Tools

Install tools:

# Install latest version
uv tool install ruff

# Install specific version
uv tool install ruff@0.3.0

# Install with extras
uv tool install 'mypy[faster-cache]'

# Install from git
uv tool install git+https://github.com/user/tool

List installed tools:

uv tool list

# Example output:
# black           0.23.11  /Users/user/.local/bin/black
# mypy            1.7.0    /Users/user/.local/bin/mypy
# ruff            0.3.0    /Users/user/.local/bin/ruff

Upgrade tools:

# Upgrade specific tool to latest
uv tool upgrade ruff

# Upgrade all tools
uv tool upgrade --all

# Upgrade to specific version
uv tool upgrade ruff@0.4.0

Uninstall tools:

# Remove installed tool
uv tool uninstall ruff

# Remove multiple tools
uv tool uninstall ruff black mypy

Step 5: Understand Tool vs Project Dependencies

Critical distinction for your workflow:

# pyproject.toml

[project]
# Main project dependencies - needed to run your application
dependencies = [
    "fastapi>=0.104.0",
    "httpx>=0.27.0",
]

[project.optional-dependencies]
# Optional features for your application (not development tools)
aws = ["boto3>=1.34.0"]
database = ["sqlalchemy>=2.0.0"]

[dependency-groups]
# Development tools - only needed while developing
test = [
    "pytest>=8.0.0",
    "pytest-cov>=4.1.0",
]
lint = [
    "ruff>=0.1.0",
    "mypy>=1.7.0",
]
format = [
    "black>=23.11.0",
]

Decision matrix:

Use CaseToolCommandWhere
Try a new linteruvxuvx flake8.Any directory
Lint project code regularlyuv runuv run ruff check.Project directory
Lint tool used across projectsuv tool installruff check.Any directory
Test codeuv runuv run pytestProject directory
Build documentationuv tool installuv tool install mkdocsGlobal install
One-time script executionuvxuvx httpieAny directory
Format codeuv runuv run black src/Project directory

Step 6: Manage Tool Versions and Upgrades

Check installed version:

# Show version of installed tool
ruff --version

# Or via uv
uv tool list | grep ruff

Upgrade specific tool:

# Upgrade to latest
uv tool upgrade ruff

# Keep all tools up to date
uv tool upgrade --all

Pin tool version:

# Use specific version (best practice for team consistency)
uv tool install ruff@0.3.0

# Override installed version
uv tool install ruff@0.4.0

Clean up old tools:

# Uninstall unused tools
uv tool uninstall old-tool

# Check what's installed
uv tool list

# Free up disk space
uv cache prune

Step 7: Handle Tool Dependencies and Conflicts

Tools with conflicting dependencies:

# These tools both depend on different versions of a library
# uvx creates isolated environments, avoiding conflicts
uvx tool-a
uvx tool-b

# Both run in separate, isolated environments
# No dependency conflicts

Tools requiring additional packages:

# Add extra packages to tool execution
uvx --with mkdocs-material mkdocs serve

# Tool runs with mkdocs + mkdocs-material installed

Specific Python version for tool:

# Some tools require specific Python versions
# Ensure compatibility
uvx --python 3.9 older-tool

# Run with minimum supported Python
uvx --python 3.10 modern-tool

Examples

Example 1: One-Time Tool Usage (uvx)

You need to check code quality but don't use ruff regularly:

# Run ruff once to check your code
uvx ruff check .

# Output analysis but don't install anything
# After execution, no system changes
# Next time you run it, it's fetched again (but cached locally)

Example 2: Regular Linting in Project (uv run)

Your project uses ruff as a dev dependency:

# In your project directory
cd my-project

# Edit pyproject.toml to add ruff to dev dependencies
# [dependency-groups]
# lint = ["ruff>=0.1.0"]

# Sync environment
uv sync --group lint

# Run linter from project environment
uv run ruff check .

# Everyone on team uses same ruff version (from uv.lock)

Example 3: Global Tool Installation (uv tool install)

You use ruff across multiple projects:

# Install once globally
uv tool install ruff

# Use in any directory
cd project-a && ruff check .
cd ../project-b && ruff check .

# No project setup needed
# Tool always available in PATH

Example 4: Test Different Python Versions

You need to verify code works on Python 3.10 and 3.12:

# Run with Python 3.10
uvx --python 3.10 pytest tests/

# Run with Python 3.12
uvx --python 3.12 pytest tests/

# Each uses different Python version
# No installation overhead

Example 5: Tool with Extras

mypy runs faster with optional faster-cache feature:

# Via uvx (temporary)
uvx --from 'mypy[faster-cache]' mypy src/

# Via uv tool install (persistent)
uv tool install 'mypy[faster-cache]'
mypy src/

Example 6: CI/CD Pipeline

Your CI uses different tools without installation:

# .github/workflows/ci.yml
- name: Lint code
  run: uvx ruff check .

- name: Type check
  run: uvx mypy src/

- name: Format check
  run: uvx black --check .

- name: Test
  run: |
    uv sync --group test
    uv run pytest tests/

Each step is clean, isolated, no tool installation overhead.

Example 7: Cleanup and Maintenance

Remove old tools and free disk space:

# See what's installed
uv tool list

# Remove tool you no longer use
uv tool uninstall old-formatter

# Prune cache of unused packages
uv cache prune

# Check cache location and size
uv cache dir

Requirements

  • uv installed (install via: curl -LsSf https://astral.sh/uv/install.sh | sh)
  • Python 3.8+ available (for running tools)
  • Understanding of your project's dependency structure

See Also

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.21%
按下载量换算23

Claude

27.02%
按下载量换算18

Cursor

19.97%
按下载量换算13

Gemini CLI

9.43%
按下载量换算6

安全审计

Gen Agent Trust Hub

通过

Socket

未通过

Snyk

可疑

权限和风险

执行命令

安装流程涉及命令执行,可能通过 npx skills add https://github.com/dawiddutoit/custom-claude --skill uv-tool-management 联网下载 Skill 或依赖。用户安装前应确认命令来源、仓库内容和执行环境。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills