VS Code がギガバイトを隠す場所
VS Code が保存するものはすべて %APPDATA%\Code 配下にあり、そのうち4つのサブフォルダーがため込みの大半を担います。User\workspaceStorage は、これまでに開いたことのあるすべてのフォルダー — 削除済みプロジェクトを含む — の状態ディレクトリを保持し、自動的に刈り込む仕組みはありません。Cache、Code Cache、GPUCache は Chromium のお馴染みの容疑者で、絶えず再構築され、いつ消しても安全です。logs は起動したすべてのセッションごとに新しいフォルダーを書き、CachedExtensionVSIXs は拡張機能更新のインストーラーを、必要がなくなってからも長く保持します。
さらに %USERPROFILE%\.vscode\extensions では、更新後も孤立した旧バージョンの拡張機能が生き残ることがあり、重量級の環境は警告ひとつ見せずに5 GB を超えます。これらの場所のどこにも設定やキーバインドは入っていません。それらは User\settings.json にあり、キャッシュの掃除では一切触れません。
- %APPDATA%\Code\User\workspaceStorage — 開いたことのあるすべてのフォルダーのプロジェクトごとの状態。古いマシンでは最大級の溜まり場
- %APPDATA%\Code\Cache、Code Cache、GPUCache — Chromium のキャッシュ。削除は安全、次回起動時に再構築される
- %APPDATA%\Code\logs — セッションごとに1フォルダー。刈り込むものは何もない
- %APPDATA%\Code\CachedExtensionVSIXs — 更新後も保持されるダウンロード済みの拡張機能インストーラー
- %USERPROFILE%\.vscode\extensions — 更新後に残る孤立した旧バージョン
- Local History の .history フォルダー — 拡張機能が有効ならプロジェクト内部に。古いスナップショットがリポジトリに積もる
本当のパフォーマンス税は拡張機能
ストレージは問題の小さいほうの半分です。すべての拡張機能は共有された extension host プロセスに読み込まれ、重量級 — Pylance、C/C++、TypeScript サーバーのような言語サーバー、さらにリンターやテーマ — は、使うかどうかにかかわらずそれぞれ独自に数百 MB の RAM を消費します。起動も引き伸ばされます。Developer: Startup Performance コマンドが、どの拡張機能が何ミリ秒を食っているかを正確に示し、60拡張機能の環境の数値には決まって驚かされます。
code --list-extensions で監査し、無効化ではなくアンインストールしましょう。無効化した拡張機能もディスクに居座り、ときには読み込まれさえします。単一環境の正直な解決策は Profiles 機能です。痩せた既定プロファイルに加え、Python、執筆、ターミナル専用作業それぞれに別プロファイルを用意し、それぞれが必要な拡張機能だけを運ばせます。
定着する掃除ルーティン
年に2回で十分です。VS Code を閉じ、Cache、Code Cache、GPUCache、logs、CachedExtensionVSIXs の中身を削除し、workspaceStorage を丸ごと空にします。失うのはタスク履歴のようなワークスペースごとの状態であって、設定ではありません。再インストールもリセットも起こりません。エディターは次回起動時に必要なものを再構築し、掃除後の最初の起動だけが数秒遅くなります。一度だけです。
痩せたままにするには、拡張機能をステッカーではなくインストール済みプログラムのように扱うこと。それぞれに現役の存在理由が必要です。そして新マシンへ移行する前に先に掃除を — さもないと、2023年に死んだプロジェクトの3年分の workspaceStorage をコピーすることになります。
よくある質問
VS Code の workspaceStorage フォルダーは削除しても安全ですか?
はい。VS Code はフォルダーを開くたびに項目を再作成します。失うのはタスク履歴や UI レイアウトといったワークスペースごとの状態だけで、設定や拡張機能ではありません。
起動を遅くしている拡張機能を知るには?
コマンドパレットから Developer: Startup Performance を実行します。起動時間を拡張機能別・フェーズ別に分解し、犯人が推測ではなく名指しで分かります。
購入前にライセンスの内容をご確認ください。
一度限りの 30 分試用では基本ツールを利用できます。PRO 機能は有料ライセンスを有効にするまでロックされています。
次に読む記事
お問い合わせ: [email protected]