uv — скилл для Claude Code: что делает и как установить
Обучает ИИ-агента управлять Python-проектами через uv вместо pip и poetry. Помогает запускать скрипты с зависимостями, фиксировать пакеты и вызывать консольные утилиты.
npx skills add astral-sh/claude-code-plugins --skill uv -a claude-codeЧто делает uv
Скилл задаёт правила работы с Python: переводит команды с pip, pip-tools, pipx и pyenv на вызовы uv. Если агент видит файл uv.lock или служебные заголовки в списках зависимостей, он переключается на uv run, uv add и uv sync. Запуск инструментов вроде ruff или pytest выполняется через uvx без предварительной инсталляции.
Инструкция описывает четыре сценария: скрипты, проекты с pyproject.toml, утилиты командной строки и режим обратной совместимости с requirements.txt. Прямой вызов python script.py или создание виртуального окружения вручную исключаются в пользу uv run.
Скилл запрещает использовать uv в проектах с poetry.lock или pdm.lock, чтобы агент не конфликтовал с чужим пакетным менеджером. Запуск через uvx требует внимания: утилиты берутся напрямую из PyPI по имени пакета, поэтому инструкция ограничивает их список только проверенным софтом.
Какие задачи решает
- перевести проект с pip, pyenv и poetry на команды uv
- запустить одиночный Python-скрипт с временными зависимостями через
uv run - зафиксировать и синхронизировать пакеты в
uv.lockбез ручной сборки venv - вызывать консольные утилиты вроде ruff через
uvxбез предварительной установки
Примеры запросов агенту
- Добавь зависимость requests в проект и синхронизируй окружение через uv
- Запусти script.py с пакетом requests без создания виртуального окружения вручную
- Запусти линтер ruff через uvx для проверки текущей папки
Как установить uv
1Через Skills CLI (Vercel)
npx skills add astral-sh/claude-code-plugins --skill uv -a claude-code2Вручную: положить файлы
~/.claude/skills/uv/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/uv/
1Через Skills CLI (Vercel)
npx skills add astral-sh/claude-code-plugins --skill uv -a codex2Вручную: положить файлы
.agents/skills/uv/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add astral-sh/claude-code-plugins --skill uv -a cursor2Вручную: положить файлы
.cursor/skills/uv/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install astral-sh/claude-code-plugins uv2Вручную: положить файлы
.github/skills/uv/SKILL.md1Через Skills CLI (Vercel)
npx skills add astral-sh/claude-code-plugins --skill uv -a gemini-cli2Командой платформы
gemini skills install https://github.com/astral-sh/claude-code-plugins --path plugins/astral/skills/uvВручную: положить файлы
.devin/skills/uv/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add astral-sh/claude-code-plugins --skill uv -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора3
Похожие
Рядом в теме «Языки программирования»
Все скиллы по теме «Языки программирования» →Вопросы о uv
Как установить uv в Claude Code?
Выполните команду npx skills add astral-sh/claude-code-plugins --skill uv -a claude-code в терминале.
Что делает скилл uv?
Он объясняет агенту синтаксис uv для управления проектами и скриптами. Агент перестаёт вызывать pip или venv напрямую и использует uv run, uv add, uv sync или uvx.
В каких проектах скилл запрещает использовать uv?
Агент не использует uv, если в репозитории найдены файлы poetry.lock или pdm.lock. В этих случаях сохраняется управление через оригинальные менеджеры пакетов.
Исходный текст
SKILL.md · Apache-2.0
--- name: uv description: Guide for using uv, the Python package and project manager. Use this when working with Python projects, scripts, packages, or tools. --- # uv uv is an extremely fast Python package and project manager. It replaces pip, pip-tools, pipx, pyenv, virtualenv, poetry, etc. ## When to use uv **Always use uv for Python work**, especially if you see: - The `uv.lock` file - uv headers in `requirements*` files, e.g., "This file was autogenerated by uv" Don't use uv in projects managed by other tools: - Poetry projects (identifiable by `poetry.lock` file) - PDM projects (identifiable by `pdm.lock` file) ## Choosing the right workflow ### Scripts **Use when:** Running single Python files and standalone scripts. **Key commands:** ```bash uv run script.py # Run a script uv run --with requests script.py # Run with additional packages uv add --script script.py requests # Add dependencies inline to the script ``` ### Projects **Use when:** There is a `pyproject.toml` or `uv.lock` **Key commands:** ```bash uv init # Create new project uv add requests # Add dependency uv remove requests # Remove dependency uv sync # Install from lockfile uv run <command> # Run commands in environment uv run python -c "" # Run Python in project environment uv run -p 3.12 <command> # Run with specific Python version ``` ### Tools **Use when:** Running command-line tools (e.g., ruff, ty, pytest) without installation. **Key commands:** ```bash uvx <tool> <args> # Run a tool without installation uvx <tool>@<version> <args> # Run a specific version of a tool ``` **Important:** - `uvx` runs tools from PyPI by package name. This can be unsafe - only run well-known tools. - Only use `uv tool install` only when specifically requested by the user. ### Pip interface **Use when:** Legacy workflows with `requirements.txt` or manual environment management, no `uv.lock` present. **Key commands:** ```bash uv venv uv pip install -r requirements.txt uv pip compile requirements.in -o requirements.txt uv pip sync requirements.txt # Platform independent resolution uv pip compile --universal requirements.in -o requirements.txt ``` **Important:** - Don't use the pip interface unless clearly needed. - Don't introduce new `requirements.txt` files. - Prefer `uv init` for new projects. ## Migrating from other tools ### pyenv → uv python ```bash pyenv install 3.12 → uv python install 3.12 pyenv versions → uv python list --only-installed pyenv local 3.12 → uv python pin 3.12 pyenv global 3.12 → uv python install 3.12 --default ``` ### pipx → uvx ```bash pipx run ruff → uvx ruff pipx install ruff → uv tool install ruff pipx upgrade ruff → uv tool upgrade ruff pipx list → uv tool list ``` ### pip and pip-tools → uv pip ```bash pip install package → uv pip install package pip install -r req.txt → uv pip install -r req.txt pip freeze → uv pip freeze pip-compile req.in → uv pip compile req.in pip-sync req.txt → uv pip sync req.txt virtualenv .venv → uv venv ``` ## Common patterns ### Don't use pip in uv projects ```bash # Bad pip install requests # Good uv add requests ``` ### Don't run python directly ```bash # Bad python script.py # Good uv run script.py ``` ```bash # Bad python -c "..." # Good uv run python -c "..." ``` ```bash # Bad python3.12 -c "..." # Good uvx [email protected] -c "..." ``` ### Don't manually manage environments in uv projects ```bash # Bad python -m venv .venv source .venv/bin/activate # Good uv run <command> ``` ## Documentation For detailed information, read the official documentation: - https://docs.astral.sh/uv/llms.txt The documentation links to specific pages for each of these workflows.
© astral-sh · Apache-2.0 · astral-sh/claude-code-plugins