Cursorを紐解いていく

まずはCursor Settingsでもみようかな

General
Account
シンプルにアカウント関連の項目。
Manageでアカウント情報見れる。Log outでログアウトできる。
VSCodeのimportもここで再度行える。
Rules for AI
Cursorの全てのチャットとCommand+K
を使った時のプロンプトの一部として適用される。
.cursorrulesファイルを作ることによって、Rules for AIで渡すプロンプトを定義できるっぽい。
offにすることもできる。
.cursorrulesファイルはよくわからんので後で調べる。
Editor
エディターの設定を開いたり、ショートカットの設定を開いたりできる。
Privacy mode
コードをCursor本体の学習に仕様しないようにする設定ができる。
学習させたくなかったりしたらenabledに設定する。

Models
Model Names
モデル名を入力することで、チャットで使えるモデルを変更できる。
OpenAIかOpenRouteのモデル名を入れることで使える。
特に名前のバリデーションはないので、間違ってるモデルでチャット送信するとエラー出る。
やることによってモデルの変えるのが良さそうだから、モデルの特徴を調べる必要ありそう。
OpenAI API Key
OpenAIのキーを入れると、CursorをOpenAIのAPIの料金で使うことができる。
ただし、これはProプランより高くつく可能性があり、カスタムモデルの機能には使えない。
Anthropic API Key
AnthropicのAPIキーを入力すると、Claudeモデルを利用できるようになる。
このキーが'claude-'で始まるすべてのモデルに適用される。
Google API Key
GoogleのAPIキーを入力すると、Google AI Studio(Gemini)のモデルを利用できるようになる。
なんのプレフィックスつけたらいいかは特に説明はないので使い方は謎。
Azure API Key
各種設定値を入れたらAzureのAIが使えるっぽい。

今の所追加で気になっているところ
- Rule for AIのベスト設定
- .cursorrulesとはどんな使い方ができるのか
- AIモデルの特徴と使い分け

Features
Corsor Tab
これはCopilot機能の設定。
Partial Accepts
Accept the next word of a suggestion with the editor.action.inlineSuggest.acceptNextWord keybinding.
editor.action.inlineSuggest.acceptNextWord
キーバインドを使ってサジェストの次の単語を受ける。
デフォルトはCommand
+RightArrow(→)
で設定されてるらしい。
Cursor Prediction
Predicts the next line you will move to after accepting a Cursor Tab suggestion and can be accepted by tab. Allows you to tab-tab-tab through edits.
カーソルタブの提案を受け入れた後に移動する次の行を予測し、タブで受け入れることができる。
サジェストしてもらう方が生産性上がるので有効が良さそう。
Trigger in Comments
Enable or disable Cursor Tab suggestions in comments.
コメント内でもサジェストしてくれる。コメント書くのも補完してもらう方が早いので有効で良さそう。
Auto Import
Tab to import necessary modules with Cursor Tab. Only supports TypeScript.
必要なモジュールのimportをサジェストしてくれる。Typescriptのみ対応だが、使ってみた感想かなりいい。
Composer
マルチファイルのコード編集ができる機能(?)。Command
+i
で使える。
↑ 設定画面にはl
と表記があるのでL(エル)かと思ったが、iの方だった。
設定項目 | 説明 |
---|---|
Always keep composer in bound | コンポーザーと画面の端にスペースを保持 |
Cmd+P for file picker | Cmd+Pでファイルピッカーを開く |
Show suggested files | コンポーザーにファイルの提案を表示 |
Collapse input box pills in pane | コンポーザーパネルの入力ボックス内のピルを折りたたんでスペースを節約 |
Composer persistence | セッション間でコンポーザーを保持 |
Iterate on lints | リンターエラーがある場合、コンポーザーがもう一度試みて修正 |
Composer bar anchor | コンポーザーバー内の ⌘⇧←/→ がコンポーザーをアンカー位置にリセット |
Auto-apply to files outside context | コンポーザーが現在のコンテキスト外のファイルに変更を自動適用 |
Codebase indexing
開いてるファイルをインデックスする。
全てのコードに対してチャットなどできるから、基本的にはSyncさせた方が良さそう。
Docs
カスタムドキュメントを追加できる。URLを渡すとドキュメントを呼んで学習してくれる機能。
チャットから@Doc
で追加も可能。
Chat
設定項目 | 説明 |
---|---|
Always search the web | すべてのプロンプトで@webを使うのと同じ動作になります |
Fade chat stream | オンにすると、チャットがフェード効果で表示されます |
Default no context | デフォルトでコンテキストなしでチャットを送信します |
Narrow scrollbar | AIチャットのスクロールバーが細く表示されます |
Auto scroll chat | チャットが下に到達すると、自動的にスクロールされます |
Show chat history | チャットが空の時にチャット履歴を表示します |
Show suggested files | チャット入力ボックスにファイルの候補を表示します |
Collapse input box pills | 入力ボックス内のピルを折りたたんでスペースを節約します |
Editor
設定項目 | 説明 |
---|---|
Show chat/edit tooltip | エディター内でハイライトされたコードの近くにチャット/編集ツールチップを表示します |
Auto parse inline edit links | ^/⌘ + K 入力で貼り付けられたリンクを自動的に解析します |
Auto select for Ctrl/⌘ + K | インラインコード編集用に領域を自動的に選択します |
Use themed diff backgrounds | インライン差分にテーマ背景色を使用します |
Use character-level diffs | インライン差分に文字単位の差分を使用します |
- 1つ目のやつ
- ヘルプみたいなツールチップでるようになる
他のはよくわからない
Terminal
項目 | 説明 |
---|---|
Terminal hint | ターミナルの下部にヒントテキストを表示する |
Show terminal hover hint | ターミナルで「Add to chat」などのヒントを表示する |
Use preview box for terminal ⌘K | オフにすると、応答が直接シェルにストリーミングされます |

Bata
ここはベータ版の機能を使える。お試しで触れるから全部オンにして良さそう。

今の所追加で気になっているところ
- Rule for AIのベスト設定
- .cursorrulesとはどんな使い方ができるのか
- AIモデルの特徴と使い分け
- Chatの使い込み
- Composerの使い込み
- Docs使ってみたい
- Editor/Terminal上でのChat使いたい
- Bata
- Notepads
- Window control panel
- Logn context chat
- AI Review

ドキュメントを見てみよう
Get Started
VS Codeからの移行方法のってる。
各プランごとに使えるAIの回数など書いている。
GPT-4、GPT-4o、Claude 3.5 Sonnet はすべてpremiumモデルとしてカウントされます。Claude 3.5 Haiku への各リクエストは、premiumモデル リクエストの 1/3 としてカウントされます。
プレミアムは回数制限あるけど、低速モードであれば無限に使えるので積極的に使っていきたい。
Tab
オートコンプリート機能。
- 追加コードの挿入だけでなく、カーソルの周囲の編集を提案します。
- 複数の行を一度に変更します。
- 最近の変更とリンター エラーに基づいて提案を行います。
キー入力やカーソルの移動ごとに、Cursor は最近の変更に基づいて提案を行おうとします。ただし、Cursor は常に提案を表示するわけではありません。モデルによって変更する必要がないと予測される場合もあります。
カーソルは、現在の行の 1 行上から 2 行下まで変更できます。
Chat
使い心地は通常のAIチャットツールと大体同じ。
コード全体の理解をした状態で聞ける。
デフォルトのコンテキストは現在のファイルが含まれる(除外も可能)
@
を使ってコンテキストを追加してくことができる
Comand+K
コード生成や編集ができる。
メッセージの送信時にOption+Enter
でやると、選択したコードに対してチャットをできる。
ファイル単位ではなく部分的なのだったらこれが使い勝手良さそう。
ターミナルでも使える。
Context
@codebase
かCommand+K
で使える。
インデックスかしたデータを元にチャットできる。
デフォルトでは全てのファイルをインデックスするが、必要のないものを除外することによって回答精度が上がる可能性あり。
.cursorrules
AIのルールを設定できる。これはChatやCommand+Kなどの機能を使うときに含まれるプロンプトになる。
@シンボル
Command+KとChat、Terminal Command+Kなどの入力ボックスで@記号が使える。
- @Files
- ファイルを指定してコンテキストに追加できる
- ファイルの内容が大きいときはCursorが自動でチャンクにわけてクエリとの関連性を見てコンテキストとして扱う部分を調整してくれる
- Cmd Kの場合、コンテキストの長さに基づいてファイルの参照方法を変える(自分で選択可能)
- auto:ファイルサイズに基づいて3つのどれかを自動選択する
- full file:ファイル全体をコンテキストとして使用する
- outline:ファイルのアウトラインを解析して、その情報をコンテキストとして使用する
- chunks:ファイルを小さなチャンクに分割して、最も関連性の高いものを選択する
- サイドバーからファイルをドロップすることでもコンテキストに追加できる
- @Folders
- Chat機能でしか使えない
- ファイル全体をコンテキストに追加できる
- Long Context Chatで特に役立つ
- @Code
- ファイルの一部分をコンテキストに追加する
- 追加したいコードを選択して、Cmd+Shift+Lで追加できる
- ショートカットのうち、Cmd+Shift+Kの方がNotionデスクトップのAI検索のショートカットと被るので、Notinoの方を無効化しておくのが良い
- @Docs
- サイトをクロールしてインデックスかしたものをコンテキストに使える
- 有名なものはすでに最初から入っているものもある
- 自分で指定したURLをもとにカスタムドキュメントを作ることもできる
- @Git
- Chat機能のみでしか使えない
- diffを使って発生する可能性のあるバグを発見したり、diffからコミットメッセージを生成したりできる
- @Codebase
- 使用する元も重要なコード部分が見つかるまで以下の手順を繰り返す
- コードベースをスキャンして重要なファイルやコードチャンクを探す
- クエリとの関連性に基づいてコンテキストの項目を並べ替える
- 文脈を活用する計画を考える
- 応答を考え出す
- 高度なコードベースクエリを送信するには、チャット欄の右下にあるドロップダウンから
reranker
を選択して、検索動作を指定すること
- 使用する元も重要なコード部分が見つかるまで以下の手順を繰り返す
- @Web
- クエリに指定されたコンテキストに基づいて検索クエリを作成して、Webから検索して関連情報を見つける
- 最新の情報を見つけるときに便利な機能
- @Chat
- Cmd K機能のみでしか使えない
- Cmd Kに現在のチャットメッセージをコンテキストとして追加できる
- Chat履歴をコンテキストに渡せる感じ
- コードの編集や生成に適用したいAIとの会話がある場合に便利
- @Definitions
- 近くにあるコンテキストを追加する
- 近くにあるって何??????
- 近くにあるコンテキストを追加する
- @{https~}
- リンクを貼ることでサイトの情報を含めて質問できる
- {サイト}の概要を教えてとか
.cursorignore
プロジェクトのルート.cursorignore
ファイルを定義することでcursorに読み込ませないファイルを指定できる。
記法は.gitignore
と同じ。
Model
cursor-small
はGPT-4よりは賢くないけど無限にアクセスできる。
各機能の最大token
- Chat:20,000 token
- Cmd K:10,000 token
- Long Contex Chat:各モデルの最大Token数になる(?)
AI Review(Bata)
コードベースの最近の変更をレビューして潜在的なバグを検出できる機能。
レビューを想定に合わせて機能させるには、レビューで重点をおくべきカスタムプロンプトを設定できる。
例)パフォーマンス関連の問題に重点をおくようにしたい場合
focus on the performance of my code
レビュー対象を選択できる
- Review Working State
- コミットされていない変更
- Review Diff with Main Branch
- 現在の作業状態とメイン ブランチ間の差分
- Review Last Commit
- 最後に行ったコミット