【ITニュース解説】How to display all extensions UID and their versions in VSCode
2025年09月19日に「Dev.to」が公開したITニュース「How to display all extensions UID and their versions in VSCode」について初心者にもわかりやすく解説しています。
ITニュース概要
VSCodeの全拡張機能のUIDとバージョンを一覧表示する方法がある。ターミナルで `code --list-extensions --show-versions` を実行すると、インストール済み拡張機能の名前とバージョンを確認できる。
ITニュース解説
システムエンジニアを目指す上で、日々の開発作業で非常に重要なツールの一つが「Visual Studio Code」(略してVS Code)だ。VS Codeは、ソースコードを効率的に記述、テスト、デバッグするために設計された統合開発環境、あるいはコードエディタと呼ばれるものだ。多くのプログラミング言語に対応しており、機能が豊富でカスタマイズ性が高いことから、世界中の開発者に広く利用されている。
VS Codeの大きな魅力の一つが「拡張機能」の存在だ。拡張機能とは、VS Code本体には含まれていない追加機能のことで、これらをインストールすることで、自分の開発スタイルやプロジェクトに合わせてVS Codeの機能を大幅に強化できる。例えば、特定のプログラミング言語のコード補完を賢くしたり、コードの誤りをリアルタイムで指摘してくれたり、コードを自動で整形してくれたり、デバッグ作業を支援してくれたりといった、様々な種類の拡張機能がある。これらは開発効率を向上させ、バグの発見を助け、チーム内のコード品質を統一するために不可欠な存在と言える。
今回紹介する内容は、VS Codeにインストールされている拡張機能の名前とバージョンを一覧で表示する方法だ。この情報がなぜ重要なのかを理解するためには、まず拡張機能が持つ「ユニークID」(UID)と「バージョン」について知る必要がある。ユニークIDとは、それぞれの拡張機能を世界中で一つに特定するための識別子のことだ。例えば、ms-python.pythonというIDは、マイクロソフトが提供するPython言語サポートのための拡張機能を指す。このIDがあることで、膨大な数の拡張機能の中から目的のものを正確に見つけ出したり、チームで同じ拡張機能を共有したりすることが可能になる。
そして「バージョン」とは、ソフトウェアの進化の段階を示す番号のことだ。例えば、0.60.0や2025.14.0といった数字がそれにあたる。ソフトウェアは常に改良され、新しい機能が追加されたり、発見されたバグが修正されたり、パフォーマンスが向上したりする。これらの変更は、新しいバージョンとして提供される。バージョンが異なると、提供される機能が違ったり、予期せぬ動作を引き起こしたり、他のソフトウェアとの互換性が失われたりする可能性があるため、どのバージョンの拡張機能を使っているのかを把握しておくことは非常に重要だ。
では、実際にこれらの情報をどうやって確認するのか。ここで登場するのが「コマンドライン」と呼ばれる操作方法だ。普段、私たちはマウスを使ってアイコンをクリックしたり、メニューを選択したりしてパソコンを操作するが、コマンドラインでは「ターミナル」や「コマンドプロンプト」といった黒い画面に、テキストで命令を入力してコンピュータに指示を出す。システムエンジニアにとって、コマンドラインの操作は非常に基本的なスキルであり、多くの作業を効率的かつ自動的に実行するために不可欠だ。
VS Codeにも、コマンドラインから操作するための便利な機能が用意されており、それがcodeコマンドだ。このcodeコマンドに特定の「オプション」を組み合わせることで、さまざまな情報を取得したり、VS Codeを起動したりできる。今回使用するのは、--list-extensionsと--show-versionsという二つのオプションだ。
--list-extensionsオプションは、その名の通り、現在VS Codeにインストールされているすべての拡張機能のユニークIDを一覧表示するためのものだ。このオプション単体で実行すると、拡張機能のIDだけが表示される。
そして、--show-versionsオプションは、--list-extensionsと組み合わせて使うことで、それぞれの拡張機能のユニークIDに加えて、その拡張機能のバージョン情報も表示してくれる機能だ。この二つのオプションを組み合わせて実行するコマンドが、記事で紹介されているcode --list-extensions --show-versionsとなる。
このコマンドをターミナルで入力して実行すると、以下のような出力が得られる。
davidanson.vscode-markdownlint@0.60.0
ms-python.black-formatter@2025.2.0
ms-python.debugpy@2025.10.0
ms-python.isort@2025.0.0
ms-python.python@2025.14.0
ms-python.vscode-pylance@2025.8.2
ms-python.vscode-python-envs@1.2.0
この出力を見ると、各行が[ベンダーID].[拡張機能名]@[バージョン]という形式になっていることがわかる。例えば、ms-python.python@2025.14.0であれば、ms-pythonがベンダーID(ここではMicrosoft)、pythonが拡張機能名、2025.14.0がそのバージョンを表している。
この情報がシステムエンジニアにとってなぜ重要なのか。最も大きな理由は「環境の再現性」と「問題解決」にある。 チームで開発を進める際、メンバー全員が同じ開発環境、特に同じバージョンの拡張機能を使っていることは非常に重要だ。もし異なるバージョンの拡張機能を使っていると、あるメンバーの環境では問題なく動作するのに、別のメンバーの環境ではエラーが発生するといった「環境依存のバグ」に遭遇する可能性が高まる。このような状況を防ぐため、チームの全員が使用している拡張機能とそのバージョンを一覧で共有し、統一することは、開発プロセスのスムーズな進行に貢献する。
また、アプリケーションが予期せぬ動作をしたり、VS Code自体が不安定になったりした場合、原因を特定するためにこの一覧が役立つことがある。特定の拡張機能のバージョンが古すぎたり、他の拡張機能と競合していたりすることが原因である場合、この一覧を参照することで、問題のある拡張機能とそのバージョンを特定し、無効化したり更新したりして問題解決に繋げることができる。
さらに、新しいプロジェクトを開始する際や、既存のプロジェクトを別の環境に移行する際にも、このコマンドで出力される情報は非常に役立つ。必要な拡張機能を漏れなくインストールし、同じバージョンに揃えることで、新しい環境でもこれまでと同じ開発体験を再現できる。これは、開発環境のセットアップ時間を短縮し、すぐに開発に取り掛かる上で非常に有効な手段だ。
セキュリティの観点からも、インストールされている拡張機能のバージョンを把握することは重要だ。古いバージョンの拡張機能には、すでに修正されたセキュリティ上の脆弱性が残っている可能性がある。定期的にバージョンを確認し、最新の状態に保つことで、開発環境をより安全に保つことができる。
このように、VS Codeで利用している拡張機能のユニークIDとバージョンを一覧表示するコマンドは、一見すると地味な情報収集に思えるかもしれないが、開発環境の安定性、チーム開発の効率性、問題解決の迅速性、そしてセキュリティの確保といった、システムエンジニアにとって非常に多岐にわたる重要な側面をサポートする基本的なスキルと知識だ。これらの情報を適切に管理し活用することで、よりスムーズで質の高い開発を実現できる。このコマンドの習得は、システムエンジニアとしての第一歩として、非常に価値のある学びとなるだろう。