Cursorの「重さ」をハックする:AIエディタの深淵を制御し、開発体験を極限まで研ぎ澄ます
Cursorは単なるVS Codeのフォークではない。LLMとローカルのコンテキストエンジンが密接に結合した「開発者の脳の拡張デバイス」だ。しかし、その強力な補完エンジンやベクトルデータベースのバックグラウンド処理は、時にエディタのパフォーマンスを牙を剥く。
「Cursorが重い」と感じる瞬間、何が起きているのか。この記事では、テックリードとして、あなたのIDE環境を極限まで最適化し、AIとの共存を完全に制御するための深層知識を伝授する。
—
1. 「重い」の正体を暴く:プロセス監視の作法
Cursorが重い時、それは必ずしもAIのせいではない。VS Codeベースである以上、拡張機能の競合(Extension Host)とElectronのメモリ管理が最大の敵だ。
プロセスを可視化する
まずは闇雲に再起動するのではなく、内部構造を覗く。
1. `Cmd + Shift + P` (または `Ctrl + Shift + P`) でコマンドパレットを開く
2. `Developer: Open Process Explorer` を実行
ここで監視すべきは以下の項目だ:
- Extension Host: 拡張機能のメモリリーク。特定のプラグインがメインスレッドをブロックしていないか確認。
- Cursor Indexing: バックグラウンドで進行中のコード解析プロセス。これがCPUを占有しているなら、インデックス対象を見直す必要がある。
—
2. インデックス再構築の最適化:`.cursorignore`の魔術
Cursorのインデックス(`codebase`機能)は強力だが、不必要なファイルまでベクトル化させるとメモリは枯渇する。「AIに何を読ませるか」を制御するのが、サクサク感を維持する鍵だ。
ルートディレクトリに `.cursorignore` を配置し、不要な巨大ファイルを徹底的に除外せよ。
.cursorignore
ログファイルやビルド成果物はAIには不要
/logs/.log
/dist/
/build/
/out/
テスト用の巨大なモックデータや静的アセット
/tests/fixtures/
/public/assets/
依存関係(node_modulesは自動管理されるが、明示的に除外を強化可能)
node_modules/
なぜこれが重要か?:AIはインデックスされたデータに基づき推論を行う。インデックス対象から外すことは、メモリ消費を抑えるだけでなく、AIの推論精度を向上させる(ノイズを減らす)という副次的利益をもたらす。
—
3. 絶対入れるべき「神プラグイン」と、切るべき「負債」
Cursorには強力なAIが統合されているため、従来のVS Codeプラグインの一部は「過剰」である。
絶対に入れるべきもの
- `Error Lens`: CursorのAI修正機能と相性が良い。エラーをコード行に直接表示し、そのまま `Cmd + K` で修正をかけるフローを構築できる。
- `GitLens`: AIが生成したコードの責任範囲(誰がいつ書いたか)を瞬時に確認する際、Cursorのコンテキストウィンドウと組み合わせて最強の武器になる。
切るべきもの
- 重すぎるLinter系: AIがコードを即座に修正・提案してくれる環境では、過度なリアルタイムLinterはリソースの無駄だ。AIの提案を優先し、LinterはCI/CD側に寄せるのが現代の設計だ。
—
4. チーム開発における「設定の共有」ベストプラクティス
チームでCursorの挙動を統一することで、環境差異による「私のPCでは動く」を排除する。`.vscode/settings.json` をGit管理下に置き、ルールを強制せよ。
{
// AIのコンテキスト認識を最適化するための設定
“cursor.cpp.enable”: true, // インライン補完を有効化
// ファイル監視の負荷を減らす
“files.watcherExclude”: {
“/node_modules/“: true,
“/dist/“: true,
“/.git/objects/“: true
},
// インデントや改行を統一し、AIの出力揺れを防ぐ
“editor.formatOnSave”: true,
“editor.tabSize”: 2,
“files.trimTrailingWhitespace”: true,
// AI特化の推奨設定
“editor.inlineSuggest.enabled”: true
}
—
5. 伝説のリードが教える「爆速化」キーボードショートカット
生産性を10倍にするには、マウスを使わないことだ。以下のコマンドを身体に叩き込め。
| ショートカット | 役割 | 現場での活用法 |
| :— | :— | :— |
| `Cmd + K` | インライン生成 | 数行のロジック修正を瞬時に完結させる |
| `Cmd + L` | チャットパネル | 現在のコードを文脈として渡し、リファクタリングを相談 |
| `Cmd + I` | Composer (マルチファイル編集) | これこそが最強。 複数ファイルをまたぐ修正を一発で反映 |
特に `Cmd + I` の活用:
単一ファイルの修正で満足せず、Composerを利用して「この関数を修正した際、影響を受けるすべての呼び出し元を更新して」と指示する。これにより、修正漏れによるバグと、手動修正のタイムロスが消滅する。
—
結論:ツールを「使われる」な、「飼い慣らせ」
Cursorの重さは、あなたのプロジェクトが持つ情報量の多さに対する「代償」である。しかし、`.cursorignore` でインデックスを管理し、拡張機能を断捨離し、Composerを活用することで、その重さを「プロジェクトの深さ」に変えることができる。
設定は一度やって終わりではない。プロジェクトの成長に合わせて、定期的に `.cursorignore` を見直し、監視プロセスを確認せよ。IDEを高速に保つことは、思考の速度を鈍らせないための、エンジニアの礼儀である。
さあ、Cursorをチューニングし、世界を書き換えよう。