コンテキスト

コードベースインデックス

コードベースのインデックス作成

@codebase または Ctrl/⌘ Enter を使用して、より良い、より正確なコードベースの回答を得るために、コードベースのインデックスを作成することができます。バックグラウンドでは、Cursor がコードベース内の各ファイルの埋め込みベクトルを計算し、これらのベクトルを使用してコードベースの回答の精度を向上させます。

コードベースのインデックスは、最新のコードベースの変更と自動的に同期されます。

Cursor Settings > Features > Codebase Indexing でコードベースインデックスの状態を確認できます。

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/chat/codebase-indexing.png

詳細設定

デフォルトでは、Cursor はコードベース内のすべてのファイルをインデックスします。

Show Settings セクションを展開して、さらに詳細なオプションにアクセスすることもできます。ここでは、新しいリポジトリに対して自動インデックスを有効にするかどうかを決定し、.gitignore 設定に加えて、Cursor がリポジトリのインデックス作成中に無視するファイルを設定できます。

プロジェクト内に AI が絶対に読み取る必要のない大きなコンテンツファイルがある場合、これらのファイルを無視する ことで回答の精度を向上させることができます。

AI ルール

Cursor Settings > General > Rules for AIRules for AI セクションを変更することで、Cursor にカスタム指示を追加できます。

これらのカスタム指示は、Cursor Chat や Ctrl/⌘ K などの機能で使用されます。

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/rules-for-ai.png

.cursorrules

プロジェクト固有の指示については、プロジェクトのルートディレクトリにある .cursorrules ファイルにこれらの指示を含めることができます。

"Rules for AI"セクションと同様に、.cursorrules ファイル内の指示は、Cursor Chat や Ctrl/⌘ K などの機能で使用されます。

@ シンボル

基本的な使い方

Cursor の AI 入力ボックス(Cmd K、Chat、または Terminal Cmd K)で、@ を入力することで @ シンボルを使用できます。提案リストが表示されるポップアップメニューが表示され、入力に基づいて自動的にフィルタリングされ、最も関連性の高い提案のみが表示されます。

キーボードショートカット

上/下矢印キーを使用して、提案リスト内をナビゲートできます。Enter を押して提案を選択できます。提案が Files などのカテゴリである場合、提案はそのカテゴリ内で最も関連性の高い項目のみにフィルタリングされます。

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@-symbols-basics.png

Cmd K キーボードショートカット

選択された Cmd K @ シンボルリスト内をナビゲートするために上/下矢印キーを使用し、Enter を使用して選択されたコンテキスト項目を展開/折りたたむことができます。ファイル参照の場合、Ctrl/⌘ M を使用してファイル読み取り戦略を切り替えることができます。ファイル読み取り戦略の詳細については、こちら を参照してください。

@Files

@Files

Cursor Chat や Cmd K などの AI 入力ボックスでは、@Files を使用してファイル全体を参照できます。また、@ の後に続けて入力すると、@Code 戦略の後にファイル検索結果が表示されます。

参照しているファイルが正しいファイルであることを確認するため、Cursor はファイルパスのプレビューを表示します。これは、異なるフォルダに同じ名前のファイルが複数ある場合に特に便利です。

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@file.png

チャットでの長いファイル参照

Cursor のチャットでファイルの内容が長すぎる場合、Cursor はファイルをより小さなブロックに分割し、クエリとの関連性に基づいて並べ替えます。

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@file-long-file.png

Cmd K のブロック戦略

Cmd K では、Cursor もファイル参照を内容の長さに応じて異なる方法で使用します。

  • auto
    • ファイルサイズに基づいて3つの読み取り戦略のいずれかを自動選択します。
  • full file
    • ファイル全体をコンテキストとして使用します。
  • outline
    • Cursor はファイルのアウトラインを解析し、その情報をコンテキストとして使用します。
  • chunks
    • Cursor はファイルをより小さなブロックに分割し、最も関連性の高いものを選択します。

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@file-cmdk.png

ドラッグ&ドロップ

メインサイドバーからファイルを Chat や Cmd K にドラッグ&ドロップして、コンテキストとして追加することもできます。

@Folders

現在、@Folders は Cursor Chat でのみサポートされています。

@Folders

Cursor では、フォルダ全体をコンテキストとして参照することもできます。@Folders は、AI に大量のコンテキストを提供したい場合の 長いコンテキストチャット に特に役立ちます。

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@folder.png

@Code

@Code

特定のコード部分を参照するには、@Code シンボルを使用できます。

コードプレビュー

@Files シンボルと同様に、Cursor はコード内容のプレビューを表示するため、参照しているコードが正しいことを確認できます。

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@code.png

エディターから

コードスニペットをコンテキストとして追加するもう一つの方法は、参照したいコードを選択し、「Add to Chat」(Ctrl/⌘ Shift L)または「Add to Edit」(Ctrl/⌘ Shift K)をクリックすることです。

これらの操作により、選択したコードスニペットがチャット入力ボックスまたは現在アクティブな Cmd K プロンプトバーに追加されます。 https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@code-select.png

選択したコードを新しいチャットに追加するには、Ctrl/⌘ L を押します。

@Docs

@Docs

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@docs.png

Cursor には、クロール、インデックス化され、コンテキストとして使用できるように準備されたサードパーティのドキュメントが含まれています。@Docs シンボルを使用してこれらにアクセスできます。

カスタムドキュメントの追加

まだ提供されていないカスタムドキュメントをクロールしてインデックス化したい場合は、@Docs > Add new doc を通じて行うことができます。目的のドキュメントの URL を貼り付けると、次のモーダルが表示されます:

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@docs-add.png

その後、Cursor はそのドキュメントをインデックス化して学習し、他のドキュメントと同様にコンテキストとして使用できるようになります。すべてのサブページとサブディレクトリをインデックス化したい場合は、URL の末尾にスラッシュを追加してください。

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@docs-learning.png

カスタムドキュメントの管理

Cursor Settings > Features > Docs の下に、追加したドキュメントが表示されます。ここでドキュメントを編集、削除、または新しく追加することができます。

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@docs-manage.png

@Git

現在、@Git は Cursor Chat でのみサポートされています。

@Git

Cursor のチャットでは、@Git を使用して git コミット、差分、またはプルリクエストをプロンプトに追加できます。

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@git.png

一般的な使用例

@Git の一般的な使用例の1つは、Cursor の AI に差分をスキャンさせ、差分によって引き起こされる可能性のあるエラーや問題を見つけさせることです。

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@git-usecase1.png

また、@Diff of Working State を使用して、現在の差分からコミットメッセージを生成することもできます。

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@git-commit-message.png

@Codebase

@Codebase

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/chat/@codebase.png

@Codebase を使用すると、Cursor Chat は以下の手順を経て、最も重要なコードスニペットを見つけ出します。

  • 収集: コードベースをスキャンして重要なファイル/コードブロックを探す
  • 再順序付け: クエリとの関連性に基づいてコンテキスト項目を再順序付けする
  • 推論: コンテキストを使用する計画を考える
  • 生成: 応答を提案する

高度なコードベースクエリを送信する別の方法は、Ctrl/⌘ + Enter ボタンの横にあるドロップダウンメニューをクリックし、検索動作として reranker を選択することです。これは @Codebase を使用していない場合にのみ利用可能で、そうでない場合は @Codebase が優先されます。

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/chat/codebase-dropdown.png

@Web

@Web

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@web.png

@Web を使用すると、Cursor は提供されたクエリとコンテキストに基づいて検索クエリを構築し、ネットワークを検索して関連情報を追加のコンテキストとして見つけ出します。

これは、Cursor が最新の情報をオンラインで見つけたり、Cursor が数秒で複数のウェブサイトをクロールして最適な答えを見つけたりするのに役立ちます。ユーザーはどこも手動で検索する必要はありません。

@Chat

この機能は現在、Cmd K でのみ利用可能です。

@Chat

Cmd K で @Chat を使用すると、現在のチャットメッセージをコンテキストとして追加できます。これは、編集やコード生成に適用したいAIとの会話がある場合に便利です。

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@chat.png

@Definitions

この機能は現在、Cmd K でのみ利用可能です。

@Definitions

@Definitions シンボルは、近くのすべての定義を Cmd K のコンテキストとして追加します。

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@definitions.png

リンクの貼り付け

@https://your-link.com

Cursor が応答する前にリンクにアクセスするには、@ を入力してからリンクを貼り付けてください。

https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@link.png

リンクの削除

デフォルトでは、リンクを自動的に解析し、Cursor Chat で @Links に変換します。リンクをプレーンテキストとして保持したい場合は、リンクをクリックしてから Unlink をクリックしてください。 https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/context/@link-unlink.png

ファイルの無視

.cursorignore ファイルを使用すると、Cursor のコードベースインデックスからファイルやディレクトリを除外できます。

.cursorignore について

コードベースインデックス からファイルを無視するには、プロジェクトのルートディレクトリに .cursorignore ファイルを使用します。これは git の .gitignore と同じように動作します。

.cursorignore.gitignore に従います。すでに .gitignore がある場合、ファイルはデフォルトで無視されます。追加のファイルを無視したい場合は、それらを .cursorignore ファイルに追加できます。

これがどのように機能するかについての詳細は、セキュリティページ で読むことができます。

チャットと Composer のコンテキスト

現在、Cursor Chat と Composer は、.cursorignore の設定に関係なく、そのコンテキスト内のすべてのファイルにアクセスできます。

AI リクエストの処理方法に関する詳細は、セキュリティページ で確認できます。

.cursorignore ファイルの例

特定のファイルを無視する

# `dist` ディレクトリ内のすべてのファイルを無視
dist/

# すべての `.log` ファイルを無視
*.log

# 特定のファイル `config.json` を無視
config.json