ツールの使用
多くのPythonパッケージは、ツールとして使用できるアプリケーションを提供しています。uvは、ツールを簡単に呼び出し、インストールするための専門的なサポートを提供します。
ツールの実行
uvx
コマンドは、ツールをインストールせずに呼び出します。
例えば、ruff
を実行するには:
ツール名の後に引数を指定できます:
$ uvx pycowsay hello from uv
-------------
< hello from uv >
-------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
uvx
を使用する場合、ツールは一時的で隔離された環境にインストールされます。
Note
ツールをプロジェクトで実行し、ツールがプロジェクトのインストールを必要とする場合(例:pytest
やmypy
を使用する場合)、uvx
の代わりにuv run
を使用することをお勧めします。そうしないと、ツールはプロジェクトから隔離された仮想環境で実行されます。
プロジェクトがフラットな構造を持っている場合(例:モジュールにsrc
ディレクトリを使用せず、プロジェクト自体がインストールを必要としない場合)、uvx
を使用しても問題ありません。この場合、ツールのバージョンをプロジェクトの依存関係に固定したい場合にのみuv run
を使用することが有益です。
パッケージ名が異なるコマンド
uvx ruff
が呼び出されると、uvはruff
コマンドを提供するruff
パッケージをインストールします。ただし、パッケージ名とコマンド名が異なる場合があります。
--from
オプションを使用して、特定のパッケージからコマンドを呼び出すことができます。例:httpie
が提供するhttp
:
特定のバージョンの要求
特定のバージョンでツールを実行するには、command@<version>
を使用します:
最新バージョンでツールを実行するには、command@latest
を使用します:
--from
オプションを使用してパッケージバージョンを指定することもできます。上記のように:
または、バージョン範囲を制約するには:
@
構文は正確なバージョン以外には使用できないことに注意してください。
異なるソースの要求
--from
オプションを使用して、代替ソースからインストールすることもできます。
例えば、gitから取得するには:
特定の名前付きブランチから最新のコミットを取得することもできます:
または特定のタグを取得することもできます:
さらには特定のコミットを取得することもできます:
プラグインを持つコマンド
追加の依存関係を含めることができます。例:mkdocs
を実行する際にmkdocs-material
を含めるには:
ツールのインストール
ツールを頻繁に使用する場合、uvx
を繰り返し呼び出す代わりに、永続的な環境にインストールし、PATH
に追加することが便利です。
Tip
uvx
はuv tool run
の便利なエイリアスです。他のツールと対話するためのコマンドはすべてuv tool
プレフィックスが必要です。
ruff
をインストールするには:
ツールがインストールされると、その実行可能ファイルはPATH
にあるbin
ディレクトリに配置され、uvなしでツールを実行できるようになります。PATH
にない場合は警告が表示され、uv tool update-shell
を使用してPATH
に追加できます。
ruff
をインストールした後、次のように利用可能になります:
uv pip install
とは異なり、ツールをインストールしてもそのモジュールは現在の環境で利用できません。例えば、次のコマンドは失敗します:
この隔離は、ツール、スクリプト、およびプロジェクトの依存関係間の相互作用と競合を減らすために重要です。
uvx
とは異なり、uv tool install
は_パッケージ_に対して操作を行い、ツールが提供するすべての実行可能ファイルをインストールします。
例えば、次のコマンドはhttp
、https
、およびhttpie
の実行可能ファイルをインストールします:
さらに、パッケージバージョンを--from
なしで含めることができます:
同様に、パッケージソースについても:
uvx
と同様に、インストールには追加のパッケージを含めることができます:
ツールのアップグレード
ツールをアップグレードするには、uv tool upgrade
を使用します:
ツールのアップグレードは、ツールのインストール時に提供されたバージョン制約を尊重します。例えば、uv tool install ruff >=0.3,<0.4
の後にuv tool upgrade ruff
を実行すると、Ruffは>=0.3,<0.4
の範囲内の最新バージョンにアップグレードされます。
バージョン制約を置き換えるには、uv tool install
を使用してツールを再インストールします:
すべてのツールをアップグレードするには:
次のステップ
uvでツールを管理する方法の詳細については、ツールの概念ページとコマンドリファレンスを参照してください。
または、プロジェクトで作業する方法を学んでください。