PackageSmith
NuGet パッケージのバージョンを、書かれているその場所に。各パッケージ行の後に最新バージョン、ポインターを合わせると全履歴、Ctrl+. で更新。脆弱性のあるパッケージや非推奨のパッケージは、ビルドより先に知らせます。
無料 · Visual Studio 2022 と 2026 · UI は 14 言語 · テレメトリなし
PackageSmith を選ぶ理由

古いパッケージがひと目でわかる
何が古いかを知るために NuGet ウィンドウを開く必要はありません。各パッケージの後に最新バージョンが表示され、パッチは緑、マイナーは黄、メジャーはオレンジです。
安全な更新を最優先
既知の脆弱性はその行に赤で表示され、それを修正した最も近いバージョンも示されます。非推奨のパッケージには代わりのパッケージが示されます。
ご使用のソースだけ
バージョンは NuGet.config のパッケージ ソース (nuget.org や社内フィード) から取得します。問い合わせるのはパッケージ名とバージョンだけで、あなたやプロジェクトに関する情報は何も送信されません。
無料、条件なし
サブスクリプションも「Pro」版もデータ収集もなく、出力ウィンドウや起動時のメッセージもありません。唯一お願いするのは、しばらくお使いいただいた後に、Marketplace での評価です。Visual Studio 2022 と 2026、x64 と ARM64 で動作します。
機能
- 各パッケージの後に最新バージョン。更新の大きさで色分けされ、最新のパッケージには控えめな
✓ 最新が表示されます。 - 脆弱性のあるパッケージと非推奨のパッケージ: 既知の脆弱性の深刻度と、非推奨のパッケージの代わりになるパッケージ。
- ホバー時のカード: 説明、より新しい各系列の最新バージョンとその日付、ワンクリックの更新。
- Ctrl+. で更新: 最新のパッチ、マイナー、メジャーへ、またはファイル内のすべてのパッケージをそれぞれのメジャー バージョン内で。1 回の編集なので、元に戻すも 1 回です。
- すべてのパッケージ ファイル:
.csproj、.vbproj、.fsproj、Directory.Packages.props(中央パッケージ管理)、.props、.targets、packages.config。Version="$(ContosoVersion)"はファイルから解決されます。 - NuGet.config のパッケージ ソース、セッション間で保持される回答のキャッシュ、オフライン スイッチ。
行末のバージョン
すべての PackageReference、PackageVersion、package 行の後に表示されます。パッケージが最新なら目立つものは何もなく、そうでなければ更新の大きさの色で最新バージョンが表示されます。リストから除外されたバージョンは提示されません。プレリリースは、設定で変更しない限り、すでにプレリリースを使用しているパッケージにのみ提示されます。

| 行の後 | 意味 |
|---|---|
| ✓ 最新 | パッケージは最新バージョンです。 |
| → 8.0.4 パッチ | 3 番目の数字だけが変わります: 修正。 |
| → 6.5.1 マイナー | 2 番目の数字が変わります: 新機能。破壊的変更は意図されていません。 |
| → 5.0.2 メジャー | 1 番目の数字が変わります: 破壊的変更が入るのはここです。 |
| ⚠ 脆弱性 · 高 | 使用中のバージョンに既知のセキュリティ脆弱性があり、その深刻度を示します。 |
| 非推奨 · … を使用 | 作成者がパッケージを非推奨とし、代わりに使用するパッケージを示しています。 |
ホバー時のカード
コード内のバージョン、または行の後のテキストにポインターを合わせると、カードに説明、より新しい各系列の最新バージョン (8.0.0 のパッケージなら 10.0.13、9.0.10、8.0.21) とその日付、さらに新しいバージョンの数、脆弱性とそれのない最も近い更新、そして … に更新、nuget.org で開く、プロジェクト サイト ボタンが表示されます。リストのバージョンをクリックすると、そのバージョンが設定されます。

Ctrl+. で更新
キャレットをパッケージ行に置いて Ctrl+.: 最新のパッチ、最新のマイナー、最新のメジャーが別々に提示されるので、安全な更新はいつでもキー 1 つです。このファイルのすべてのパッケージをメジャー バージョン内で更新 は、各パッケージを同じメジャー内の最新バージョンにします。メジャーの更新は別途判断します。プロパティ ($(ContosoVersion)) のバージョンは、ファイル内でそのプロパティが定義されている場所で更新されます。ファイルは手動の変更と同じように編集されるので、元に戻すが使え、Visual Studio はいつもどおりパッケージを復元します。

設定
ツール → オプション → SmithWorks → PackageSmith。各オプションに説明があります。
| オプション | 既定値 |
|---|---|
| 各パッケージの後に最新バージョンを表示する | オン |
| 最新のパッケージに "✓ 最新" を表示する | オン |
| すべてのパッケージにプレリリース バージョンを提示する | オフ |
| ソースに見つからないパッケージをマークする | オフ |
| 脆弱性のあるパッケージと非推奨のパッケージを示す | オン |
| ホバー時にカードを表示する | オン |
| Ctrl+. で更新 | オン |
| 再確認の間隔 | 1 時間 |
| オフライン | オフ |
| Marketplace での評価をお願いする | オン |
設定は %LocalAppData%\PackageSmith に保存され、キャッシュされたバージョンもその隣に保存されます。

よくある質問
PackageSmith はデータを送信しますか?
ファイル内のパッケージのバージョンを、ご使用のパッケージ ソース (NuGet.config から。ない場合は nuget.org) に問い合わせます。Visual Studio がパッケージを復元するときと同じ要求です。それ以外は何も送信されません: テレメトリも、プロジェクト名も、あなたに関する情報もありません。オフライン をオンにすると、要求は一切行われません。
社内フィードにはログインが必要です。動作しますか?
まだ対応していません: 資格情報が必要なフィードはスキップされ、そのパッケージには何も表示されません。誤った情報が表示されることはありません。パブリックな v3 フィード (nuget.org、公開の社内フィード) は動作します。
一部のパッケージの後に何も表示されないのはなぜですか?
バージョンが範囲やワイルドカード ([1.0,2.0)、13.*) の場合、プロパティが別のファイルで定義されている場合、どのソースからも回答がなかった場合は、何も表示されません。ソースに見つからないパッケージをマークする をオンにすると、すべてのソースがないと回答したパッケージがわかります。
中央パッケージ管理で動作しますか?
はい: Directory.Packages.props のすべての PackageVersion の後にバージョンが表示され、プロジェクト内の VersionOverride にも表示されます。
更新するとパッケージは復元されますか?
PackageSmith はファイルを編集するだけです。バージョンを手で編集したときと同じように、変更後に Visual Studio がパッケージを復元します。
LensSmith と一緒に使えますか?
はい。どちらも行末に書き込むため、そのスペースを共有します: 先にバージョン、その後に LensSmith の NuGet 警告が表示されます。
問題の報告や機能の提案はどこでできますか?
GitHub の Feedback リポジトリで Issue を作成してください。バグとアイデア用のフォームがあります (非公開の名前は変更してください)。Marketplace の Q&A タブもご利用いただけます。
変更履歴
1.0.1
- 拡張機能が役に立った後に一度だけ、Marketplace での評価をお願いします。[後で] と [今後表示しない] があり、オプションでオフにもできます。
1.0.0
- 最初の公開リリース。