最近Cursorに乗り換えました。AI補完が便利そうだなと思って入れたんですが、最初の感想は「なんか違う」でした。
VSCodeを長く使ってきた身としては、余計なAI機能がデフォルトで有効になっていて、ちょっと邪魔に感じる場面が多かったんですよね。Tab補完が勝手に出てきたり、コマンドパレットにAI系のコマンドが混ざったり。
で、結局やったのが「一回VSCodeに近づけてから、必要なAI機能だけ足す」というアプローチです。その設定をメモしておきます。
そもそもCursorって何
ざっくり言うと、VSCodeをフォークしたAIコードエディタです。中身はほぼVSCodeなので、拡張機能もsettings.jsonもそのまま使えます。
ただ、フォークゆえの微妙な差異があって、そこで地味にハマる。VSCode本体のアップデートに追従するタイミングがずれるので、最新のVSCode機能がCursorにはまだ来ていないこともあります。
VSCodeの設定をそのまま持ってくる
最初にやるべきはこれです。Cursorのコマンドパレットから Cursor Settings ではなく、普通にVSCodeと同じ settings.json を開きます。
Cmd + Shift + P → Preferences: Open User Settings (JSON)
VSCodeで使っていた settings.json の中身をそのままコピペすれば、だいたい動きます。自分の場合はこれだけで見た目と基本操作はほぼ元通りになりました。
ちなみに、VSCodeのSettings Syncを使っていた人は注意が必要です。CursorにはCursor独自の設定同期機能があるんですが、VSCodeのSettings Syncとは別物です。手動でコピーしたほうが確実でした。
AI機能を一回オフにする
ここが一番伝えたいところです。Cursorのデフォルト設定だと、AIが至るところで顔を出してきます。便利な場面もあるんですが、まずは黙っていてほしい。
Cursor Settings > Features から以下をオフにしました。
Copilot++(Tab補完)
{
"cursor.cpp.enableCpp": false
}CursorのTab補完は Copilot++ という名前で、GitHub Copilotとは別物です。最初これに気づかなくて、GitHub Copilotを無効にしても補完が出続けて「なんで?」ってなりました。地味にハマるやつです。
自分はGitHub Copilotを使いたかったので、Cursor側のTab補完はオフにしています。両方有効だと補完が競合してカオスになります。
Cmd+K(インラインAI編集)
エディタ上で Cmd + K を押すとAI編集のプロンプトが出るんですが、これが普通のVSCodeの Cmd + K のキーバインド(行選択とか)と衝突します。
{
"cursor.cmdk.enabled": false
}もしくは、キーバインドだけ変えるのでもいいです。自分は一回オフにしてから、慣れてきたら Cmd + Shift + K あたりに再割り当てしました。
自動コンテキスト送信
Cursorはファイルの内容をAIに自動で送信する機能がいくつかあります。セキュリティ的に気になる人は確認しておいたほうがいいです。
Cursor Settings > General > Privacy Mode を enabled にすると、コードがCursorのサーバーに保存されなくなります。業務で使うなら最初に設定しておくべきですね。
キーバインドの衝突を直す
CursorはいくつかのAI機能にキーバインドを予約しています。VSCodeのデフォルトと被るやつがあるので、気になったものを直しました。
Cmd + K → Cursor: AI編集(VSCodeでは行操作系のプレフィックス)
Cmd + L → Cursor: チャットパネル(VSCodeでは行選択)
Cmd + I → Cursor: Composer(VSCodeでは提案のトリガー)
keybindings.json で上書きできます。
[
{
"key": "cmd+l",
"command": "expandLineSelection"
},
{
"key": "cmd+shift+l",
"command": "cursor.chat.focus"
}
]自分は Cmd + L は行選択として残して、チャットは Cmd + Shift + L に逃がしました。このへんは好みですが、VSCodeの手癖を優先したほうがストレスが少ないと思います。
拡張機能の互換性
ほとんどのVSCode拡張機能はそのまま動きます。ただ、いくつか注意点がありました。
- Remote – SSH: 動くけど、Cursorのバージョンによっては接続が不安定になることがあった。最新版にしたら直りました
- GitHub Copilot: 前述の通り、Copilot++と競合するので片方をオフにする
- テーマ系: 問題なし。VSCode Marketplaceからそのまま入る
- Language Server系: これも問題なし
地味に困ったのが、Cursor独自のマーケットプレイスとVSCodeのマーケットプレイスが混在していることです。検索すると両方出てくるので、たまに「あれ、この拡張機能インストールできない」ってなります。そういうときは .vsix を手動で入れれば解決しました。
見た目をVSCodeに寄せる
Cursorはデフォルトでサイドバーやタイトルバーの見た目が微妙に違います。
{
"window.titleBarStyle": "native",
"workbench.activityBar.location": "side"
}titleBarStyle を native にするとmacOSネイティブのタイトルバーになって、VSCodeっぽさが増します。ただこれは完全に好みの問題です。
ここまでやってから、AI機能を足す
VSCodeライクな状態に戻したら、そこから必要なAI機能だけオンにしていきます。自分が結局オンにしたのはこのあたり。
- チャットパネル(
Cmd + Shift + L):コードの質問をするのに便利。ファイルを@で指定できるのがChatGPTにはない強み - Composer(
Cmd + I):複数ファイルにまたがる変更のとき。ただし差分は必ず確認する - Tab補完:最初オフにしたけど、1週間くらいして結局オンに戻した。GitHub Copilotより文脈を広く見てくれる感じがあって、特にリファクタリング系で精度がよかった
逆に、まだオフのままなのが Auto-apply 系の機能。AIの提案を自動で適用するのは、自分にはまだ怖い。差分を目で見て適用したい派です。
所感
Cursorは「AIエディタ」として売り出しているので、デフォルトがAI全開なのは当然ではあるんですが、VSCodeから移行する人にとっては最初のギャップがけっこう大きいと感じました。
「一回全部オフにしてから足す」方式にしたら、移行のストレスがかなり減りました。全部入りで使い始めて「なんか違う」と感じている人は、試してみる価値はあると思います。
次はCursorの .cursorrules の書き方とか、プロジェクトごとのAI設定の話を書いてみたいですね。ここを詰めると補完の精度がだいぶ変わってくるので。
ここまで読んでいただき、ありがとうございます。もしこの記事の技術や考え方に少しでも興味を持っていただけたら、ネクストのエンジニアと気軽に話してみませんか。
- 選考ではありません
- 履歴書不要
- 技術の話が中心
- 所要時間30分程度
- オンラインOK