uv
Pythonのパッケージおよびプロジェクトマネージャーである uv の使い方ガイドです。Pythonのプロジェクト、スクリプト、パッケージ、またはツールを扱う際に活用してください。
description の原文を見る
Guide for using uv, the Python package and project manager. Use this when working with Python projects, scripts, packages, or tools.
SKILL.md 本文
uv
uvは非常に高速なPythonパッケージおよびプロジェクトマネージャーです。pip、pip-tools、pipx、pyenv、virtualenv、poetryなどを置き換えます。
uvを使用すべき場合
Pythonの作業には常にuvを使用してください。特に以下が見つかった場合:
uv.lockファイルrequirements*ファイル内のuvヘッダー(例:「This file was autogenerated by uv」)
他のツールで管理されているプロジェクトではuvを使用しないでください:
- Poetryプロジェクト(
poetry.lockファイルで識別可能) - PDMプロジェクト(
pdm.lockファイルで識別可能)
適切なワークフローの選択
スクリプト
使用場面: 単一のPythonファイルとスタンドアロンスクリプトを実行する場合。
主要コマンド:
uv run script.py # スクリプトを実行
uv run --with requests script.py # 追加パッケージを含めて実行
uv add --script script.py requests # 依存関係をスクリプトにインラインで追加
プロジェクト
使用場面: pyproject.toml または uv.lock が存在する場合。
主要コマンド:
uv init # 新しいプロジェクトを作成
uv add requests # 依存関係を追加
uv remove requests # 依存関係を削除
uv sync # ロックファイルからインストール
uv run <command> # 環境内でコマンドを実行
uv run python -c "" # プロジェクト環境内でPythonを実行
uv run -p 3.12 <command> # 特定のPythonバージョンで実行
ツール
使用場面: コマンドラインツール(例:ruff、ty、pytest)をインストールせずに実行する場合。
主要コマンド:
uvx <tool> <args> # インストールせずにツールを実行
uvx <tool>@<version> <args> # 特定のバージョンのツールを実行
重要:
uvxはパッケージ名でPyPIからツールを実行します。これは安全でない可能性があります。よく知られたツールのみを実行してください。uv tool installはユーザーが明確に要求した場合のみ使用してください。
Pipインターフェース
使用場面: requirements.txt を使用したレガシーワークフローまたは手動環境管理。uv.lock が存在しない場合。
主要コマンド:
uv venv
uv pip install -r requirements.txt
uv pip compile requirements.in -o requirements.txt
uv pip sync requirements.txt
# プラットフォーム非依存の解決
uv pip compile --universal requirements.in -o requirements.txt
重要:
- 明確に必要でない限り、pipインターフェースを使用しないでください。
- 新しい
requirements.txtファイルを導入しないでください。 - 新規プロジェクトでは
uv initを優先してください。
他のツールからの移行
pyenv → uv python
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
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 と pip-tools → uv pip
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
一般的なパターン
uvプロジェクトではpipを使用しないでください
# 悪い例
pip install requests
# 良い例
uv add requests
pythonを直接実行しないでください
# 悪い例
python script.py
# 良い例
uv run script.py
# 悪い例
python -c "..."
# 良い例
uv run python -c "..."
# 悪い例
python3.12 -c "..."
# 良い例
uvx python@3.12 -c "..."
uvプロジェクトで環境を手動で管理しないでください
# 悪い例
python -m venv .venv
source .venv/bin/activate
# 良い例
uv run <command>
ドキュメント
詳細な情報については、公式ドキュメントを参照してください:
ドキュメントには、これらの各ワークフローの個別ページへのリンクがあります。
ライセンス: Apache-2.0(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- astral-sh
- ライセンス
- Apache-2.0
- 最終更新
- 不明
Source: https://github.com/astral-sh/claude-code-plugins / ライセンス: Apache-2.0
関連スキル
doubt-driven-development
重要な判断はすべて、本番環境への展開前に新しい視点から対抗的レビューを実施します。速度より正確性が重要な場合、不慣れなコードを扱う場合、本番環境・セキュリティに関わるロジック・取り消し不可の操作など影響度が高い場合、または後でバグを修正するよりも今検証する方が効率的な場合に活用してください。
apprun-skills
TypeScriptを使用したAppRunアプリケーションのMVU設計に関する総合的なガイダンスが得られます。コンポーネントパターン、イベントハンドリング、状態管理(非同期ジェネレータを含む)、パラメータと保護機能を備えたルーティング・ナビゲーション、vistestを使用したテストに対応しています。AppRunコンポーネントの設計・レビュー、ルートの配線、状態フローの管理、AppRunテストの作成時に活用してください。
desloppify
コードベースのヘルスチェックと技術負債の追跡ツールです。コード品質、技術負債、デッドコード、大規模ファイル、ゴッドクラス、重複関数、コードスメル、命名規則の問題、インポートサイクル、結合度の問題についてユーザーが質問した場合に使用してください。また、ヘルススコアの確認、次の改善項目の提案、クリーンアップ計画の作成をリクエストされた際にも対応します。29言語に対応しています。
debugging-and-error-recovery
テストが失敗したり、ビルドが壊れたり、動作が期待と異なったり、予期しないエラーが発生したりした場合に、体系的な根本原因デバッグをガイドします。推測ではなく、根本原因を見つけて修正するための体系的なアプローチが必要な場合に使用してください。
test-driven-development
テスト駆動開発により実装を進めます。ロジックの実装、バグの修正、動作の変更など、あらゆる場面で活用できます。コードが正常に動作することを証明する必要がある場合、バグ報告を受けた場合、既存機能を修正する予定がある場合に使用してください。
incremental-implementation
変更を段階的に実施します。複数のファイルに影響する機能や変更を実装する場合に使用してください。大量のコードを一度に書こうとしている場合や、タスクが一度では完結できないほど大きい場合に活用します。