コンテンツにスキップ

Cursorのインストール

CursorはVS Codeをベースに開発されたAI搭載のコードエディタです。コード補完、リファクタリング、コード生成などをAIがサポートします。

Terminal window
brew install --cask cursor

CursorはVS Codeの設定を引き継ぐことができます:

  1. Cursorを起動
  2. 初回起動時に「Import from VS Code」を選択
  3. 設定、拡張機能、キーバインディングがインポートされる
  1. Cursorアカウントを作成またはログイン
  2. APIキーの設定(必要に応じて)
  3. AI機能の有効化
  • コード補完: コンテキストを理解した高度な補完
  • チャット: コードについてAIと対話
  • コード生成: 自然言語からコード生成
  • リファクタリング: AIによるコード改善提案
  • エラー修正: エラーの自動修正提案
  • Cmd+K: AIチャットを開く
  • Cmd+L: 現在の選択範囲でAIに質問
  • Tab: AI補完を受け入れる
  • Esc: AI補完をキャンセル
{
// AI補完の設定
"cursor.aiEnabled": true,
"cursor.aiModel": "gpt-4",
"cursor.aiTemperature": 0.7,
// 補完の動作
"cursor.autoTriggerCompletion": true,
"cursor.completionDelay": 200,
// プライバシー設定
"cursor.telemetryEnabled": false
}

キーバインディングのカスタマイズ

Section titled “キーバインディングのカスタマイズ”

keybindings.json:

[
{
"key": "cmd+shift+a",
"command": "cursor.aiChat"
},
{
"key": "cmd+shift+r",
"command": "cursor.refactor"
}
]

VS Codeの拡張機能がそのまま使用できます:

  • GitLens
  • Prettier
  • ESLint
  • Docker
  • Remote Development
Terminal window
# コマンドラインから
cursor --install-extension ms-python.python
# またはCursor内から
Cmd+Shift+X で拡張機能パネルを開く
{
// コードをAIに送信しない
"cursor.disableCodeSending": true,
// 特定のファイルパターンを除外
"cursor.excludePatterns": [
"**/.env",
"**/*.key",
"**/secrets/**"
]
}

プライバシーを重視する場合、ローカルLLMも使用可能:

  1. 設定でLocal Modelを選択
  2. 必要なモデルをダウンロード
  3. オフラインでAI機能を使用
Terminal window
# 拡張機能の再インストール
cursor --list-extensions
cursor --uninstall-extension <extension-id>
cursor --install-extension <extension-id>
  1. インターネット接続を確認
  2. APIキーが正しく設定されているか確認
  3. Cursorを再起動
{
// AI機能の負荷を軽減
"cursor.aiCompletionOnType": false,
"cursor.maxConcurrentRequests": 1
}

CursorとVS Codeは独立してインストールされるため、併用可能です:

Terminal window
# VS Code用
code .
# Cursor用
cursor .
Terminal window
# Homebrewでアップデート
brew upgrade cursor
# または自動アップデートを有効化
"cursor.autoUpdate": true
  1. プロジェクトごとの設定

    • .vscode/settings.jsonでプロジェクト固有の設定
    • センシティブなコードではAI機能を制限
  2. 効率的な使い方

    • 自然言語でコメントを書いてからコード生成
    • AIチャットでコードレビューを依頼
    • リファクタリング提案を活用
  3. プライバシーの保護

    • 機密情報を含むファイルは除外設定
    • 必要に応じてローカルモデルを使用