ガイド/CursorのCPU使用率が高い

CursorのCPU使用率が高い、Macのバッテリーが減る? 原因の見つけ方

Atta 🐬

Vitalsの創業者

公開日

結論

Cursorはブラウザと同じ作りなので、アクティビティモニタには複数のプロセスとして表示されます。Cursor、ウインドウごとのCursor Helper (Renderer)、機能拡張用のCursor Helper (Plugin)、そしてCursor Helper (GPU)です。CPU使用率が高い原因は、ほぼ必ず次の3つのどれかです。機能拡張、大きなプロジェクトでのインデックス作成やファイル監視、またはエージェントが起動して動かしたままにした開発サーバやリンターなどのツールです。CursorでHelp → Open Process Explorerを選ぶと、どれなのかがわかります。Mac用システムモニタのVitalsなら、Cursorを1つのアプリとしてウインドウ、機能拡張、グラフィックスに分けて表示し、各プロジェクトフォルダで動いているすべてのプロセスを一覧にします。

Cursorが何をしているかを見つける方法

  1. 01 アクティビティモニタを開いて“CPU”をクリックし、検索フィールドに“Cursor”と入力します。どの行が忙しいかを確認します。Cursor Helper (Plugin)は機能拡張、Cursor Helper (Renderer)はウインドウ、Cursor Helper (GPU)は描画です。
  2. 02 CursorでHelp → Open Process Explorerを選びます。Cursor自身のプロセスが名前、CPU、メモリとともに一覧表示されるので、機能拡張ホスト、ウインドウ、ファイル監視、検索のどれなのかがわかります。
  3. 03 機能拡張が原因なら、コマンドパレット(⇧⌘P)を開いてHelp: Start Extension Bisectを実行します。Cursorが機能拡張を半分ずつオフにして、原因の1つを突き止めます。
  4. 04 アクティビティモニタの検索フィールドを空にして、もう一度“% CPU”で並べ替えます。上位にnode、next-server、biomeなどのツールがないか探します。これらはCursor自体ではなく、Cursorやそのエージェントが起動したものです。
  5. 05 ⌘QでCursorを完全に終了し、1分ほど様子を見ます。前の手順で見つけたもののうち、まだ動いているものは残されたプロセスです。選択して、アクティビティモニタのツールバーの停止ボタンをクリックします。

機能拡張が原因かどうかを一度で確かめるには、Cursorを終了し、ターミナルからcursor --disable-extensionsで起動します。Macが熱くならなければ、原因は機能拡張です。

CursorはVisual Studio Codeから派生したアプリで、どちらもElectronアプリです。ブラウザエンジン、機能拡張を動かすNode.jsのサービス、ウインドウごとのプロセスで構成されています。そのうえでCursorは、AIが検索できるようにプロジェクトのインデックスを作成し、エージェントがあなたに代わってターミナルでコマンドを実行します。これらはどれもCPUを使い続けることがあり、それぞれ違う名前で表示され、対処法も違います。下の表では、表示される名前とその正体を示しています。

Cursorのプロセスの正体

見えているもの概要すること
Cursor Helper (Plugin)のCPU使用率が高い 機能拡張ホスト: すべての機能拡張がここで動く Extension Bisectを使うか、機能拡張を無効にして起動する
Cursor Helper (Renderer)のCPU使用率が高い 1つのウインドウと、そのエディタとチャット 長いチャットと使っていないウインドウを閉じ、ウインドウを再読み込みする
rgプロセスのCPU使用率が高い 検索とインデックス作成がプロジェクトのファイルを読んでいる 大きなフォルダを検索とインデックス作成から除外する
Cursor Helper (GPU)が忙しい インターフェイスの描画 たいていは短時間。高いままならCursorをアップデートする
node、tsc、biomeの負荷が高い Cursorから起動された開発サーバ、型チェッカー、リンター Cursorのターミナルで停止するか、アクティビティモニタで終了する

機能拡張: 最も多い原因

すべての機能拡張は、Cursor Helper (Plugin)という1つのプロセスの中で動きます。そのため、忙しい機能拡張が1つあるだけで、プロセス全体が原因に見えます。よくあるのは、キーを打つたびに大きなプロジェクトをチェックし直すリンター、フォーマッタ、言語サーバです。Extension Bisectなら、数回の再起動で原因の機能拡張が見つかります。1つずつオフにするより早く済みます。

Cursorを最初に設定したときにVisual Studio Codeから引き継いだ機能拡張も確認しましょう。Cursorがすでに備えている機能と重なるものがあります。使わないものは削除します。無効にした機能拡張は負荷になりません。

大きなプロジェクト: インデックス作成とファイル監視

プロジェクトを開くと、CursorはAIのためにインデックスを作成し、ファイルの変更を監視します。大きなリポジトリや、生成された大きなフォルダがあるリポジトリでは、これが長時間にわたって複数のコアを使い続けることがあります。Cursorのフォーラムには、非常に大きなプロジェクトでrgの検索プロセスがいつまでも落ち着かないという報告もあります。

生成されたフォルダや外部から取り込んだフォルダは対象から外しましょう。プロジェクトのルートにある.cursorignoreファイルと、Settingsのfiles.watcherExcludeとsearch.excludeに追加します。重要なのは、ビルド出力、依存関係のフォルダ、キャッシュです。そのあと、Cursor Settings → Indexing & Docsでインデックス作成が終わったかどうかを確認します。

エージェントが動かしたままにするもの

Cursorのエージェントは、あなたに代わってコマンドを実行します。作業を確認するための開発サーバ、型チェッカー、テストの監視などです。タスクが終わったりチャットを閉じたりしても、これらのプロセスが止まるとは限りません。ウインドウのない普通のプロセスなので、画面には何も表示されません。固まったリンターや、数ギガバイトを抱えた開発サーバが何日も動き続けることもあります。

Cursorを閉じたあともバッテリーが減るように見えるのも、これが理由です。Cursorは終了していても、Cursorが起動したものは終了していません。上の手順のとおり、終了後にアクティビティモニタを確認しましょう。親がいなくなったプロセスは孤児プロセスと呼ばれ、ゾンビプロセスについて質問されるときは、たいていこれを指しています。

バッテリー: どの程度が普通か

入力に合わせてAIモデルが応答するElectronのエディタは、普通のテキストエディタより多くのエネルギーを使います。これはこのツールを使う代償です。普通でないのは、入力していないのにCPU使用率が高いことです。Cursorが何もしていないのにアクティビティモニタの“エネルギー”タブで上位にあるなら、上の手順を順に試しましょう。全体像については、Macのバッテリーを消耗させているものを参照してください。

Vitalsでできること

Vitalsは、Cursorを1つのアプリとして各部分の名前付きで表示し、Cursorが起動したプロセスをプロジェクトごとにまとめます。

  • Cursorを1行で、メモリ、CPU、エネルギーの合計とともに表示。クリックするとウインドウ、機能拡張、グラフィックスを分けて表示
  • “プロジェクト”タブ: プロジェクトフォルダで動いているすべてのプロセスを、どのアプリが起動したかにかかわらず、メモリ、CPU、待ち受けポートとともに表示
  • アイドル状態で動いたままの開発サーバを知らせ、停止するかどうかを尋ねます
  • アプリがCPUを何分も使い続けたときや、メモリ使用量が増え続けたときに通知
  • 最もエネルギーを使ったアプリを1時間単位で表示。Cursorなのか、Cursorが起動したものなのかがわかります

知っておくと便利なこと

  • Vitalsが表示するのは機能拡張のプロセスで、その中のどの機能拡張が忙しいかは表示しません。それはCursorのExtension Bisectで見つけられます。
  • Vitalsが勝手に何かを終了することはありません。“終了”と“停止”は、クリックしたときにだけ実行されます。
Vitalsを購入 $9 発売記念期間は$9、その後は$29。14日間の返金保証付き。

よくある質問

MacでCursorのCPU使用率が高いのはなぜ?

たいていは、機能拡張、大きなプロジェクトでのインデックス作成、またはエージェントが起動して動かしたままにしたツールが原因です。CursorでHelp → Open Process Explorerを選ぶと、どのプロセスが忙しいかがわかります。

Cursor Helper (Plugin)とは?

Cursorのすべての機能拡張を動かすプロセスです。CPU使用率が高いときは、どれか1つの機能拡張が忙しくなっています。コマンドパレットからHelp: Start Extension Bisectを実行すると、どれなのかがわかります。

Cursor Helper (Renderer)とは?

Cursorの1つのウインドウで、エディタ、パネル、チャットを担当します。ウインドウごとに1つあります。長いチャットを閉じてウインドウを再読み込みすると、メモリとCPUの使用量が下がります。

CursorでMacBookのバッテリーが減るのはなぜ?

Cursorは、入力に合わせてAIモデルが動くElectronアプリなので、普通のエディタより電力を使います。何もしていないのに大きく減るなら、機能拡張、インデックス作成、または動いたままの開発サーバやビルドツールが原因です。

Cursorを終了したのにMacが熱いままなのはなぜ?

Cursorが起動した開発サーバ、型チェッカー、リンターなどがまだ動いています。アクティビティモニタを“% CPU”で並べ替え、node、tsc、biomeを探しましょう。

Cursorがフォルダのインデックスを作成しないようにするには?

プロジェクトのルートにある.cursorignoreファイルにそのフォルダを追加します。除外する価値があるのは、ビルド出力と依存関係のフォルダです。

MacでCursorが何を使っているかがわかるアプリはある?

Vitalsは、Cursorを1つのアプリとしてウインドウ、機能拡張、グラフィックスに分けて表示します。“プロジェクト”タブでは、各プロジェクトフォルダで動いているすべてのプロセスを一覧にし、アイドル状態のままの開発サーバを知らせます。

用語集

ほかのガイド