チャット
概要
Cursor Chat を使用すると、エディター内で最も強力な言語モデルを利用して質問したり、コードベースの問題を解決したりできます。
言語モデルが良い回答を提供するためには、あなたのコードベースに関連する具体的な内容、つまりコンテキストを理解する必要があります。
Cursor には、チャットでコンテキストを提供するためのいくつかの機能が組み込まれており、自動的にコードベース全体のコンテキストを含めたり、ウェブを検索したり、ドキュメントをインデックスしたり、ユーザーが指定したコードブロックを参照したりできます。これらの機能は、コードを扱う際に言語モデルを使用するために必要な面倒なコピー&ペースト作業をなくすことを目的として設計されています。
デフォルトでは、Cursor Chat は AI パネルに配置されており、メインのサイドバーの反対側にあります。AI パネルを切り替えるには Ctrl/⌘ + L
を押し、開くとチャットボックスにフォーカスが当たります。クエリを送信するには Enter
を押します。
ユーザーと AI のメッセージ
ユーザーメッセージには、入力したテキストと参照したコンテキストが含まれます。以前のユーザーメッセージに戻って編集し、クエリを再実行することができます。これにより、それ以降のメッセージが上書きされ、新しいメッセージが生成されます。
AI メッセージは、選択した AI モデルによって生成された応答です。これらは以前のユーザーメッセージとペアになっています。AI メッセージには、即時適用 を介してコードベースに追加できる解析済みのコードブロックが含まれる場合があります。
同じスレッド内のすべてのユーザー/AI メッセージはチャットスレッドと呼ばれ、各チャットスレッドはチャット履歴に保存されます。
チャット履歴
AI パネルの右上にある「Previous Chats」ボタンをクリックするか、Ctrl/⌘ + Alt/Option + L
を押すと、チャット履歴を表示できます。任意のチャットスレッドをクリックして、そのスレッドを構成するメッセージを表示したり、ペンアイコンをクリックしてスレッドのタイトルを編集したり、履歴内でスレッドにホバーしたときにゴミ箱アイコンをクリックしてスレッドを削除したりできます。
Cursor スレッドのタイトルは、最初のユーザーメッセージの最初の数語です。
デフォルトのコンテキスト
デフォルトでは、Cursor Chat は現在のファイルをコンテキストとして含みます。メッセージ内の現在のファイルタグを削除することで、コンテキストを含まないクエリを送信できます。入力中に、入力ボックスの上のタグに含まれるコンテキストを確認できます。
コンテキストの追加
デフォルトでは、ユーザーメッセージには入力したテキストと参照したコンテキストが含まれます。@ 記号を使用して、各バブルにさらにカスタムコンテキストを追加できます。デフォルトでは、現在表示しているファイルもユーザーメッセージのコンテキストとして使用されます。
詳細については、@ 記号 ページを参照してください。
チャット内の AI 修正
チャット内で AI 修正を使用すると、コードベースの linter エラーを修正する便利な機能です。この機能を使用するには、エディター内のエラーにマウスをホバーし、表示される青い AI 修正ボタンをクリックします。
この機能のキーボードショートカットは Ctrl/⌘ + Shift + E
です。
カスタマイズ
AI モデルの選択
モデルスイッチャー を使用して、好みの AI モデルを選択すると、Cursor Chat はそのモデルを使用して応答を生成します。Ctrl/⌘ /
を押すことでモデルを切り替えることができます。
デフォルトでは、Cursor Chat は OpenAI の GPT-4
を AI モデルとして使用します(具体的には、gpt-4
タグは私たちの GPT4-Turbo インスタンスを指します)。
チャットで選択した AI モデルは将来のセッションのために保存されるため、Cursor Chat を開くたびに変更する必要はありません。
エディターでの使用
Cursor Chat は、水平の「More」ボタンをクリックし、次に「Open Chat in Editor」ボタンをクリックすることで、エディタタブとしても使用できます。Cursor Chat はその後、通常のエディタタブとして表示されます。Ctrl/⌘ + L
を押すと、チャットタブが開き、そこにフォーカスが当たります。
設定
Cursor Settings
> Features
> Chat
の下で、Cursor Chat をカスタマイズできます。
これらの設定には以下が含まれます:
- 常にウェブを検索して回答を取得する。
- これにより、AIモデルは各クエリで最新情報を取得するためにウェブを閲覧します。
- チャットのフェードインアニメーションを追加する。
- これにより、AIメッセージが生成される際にスムーズなアニメーションが追加されます。
- チャットを自動スクロールする。
- スレッドの最下部にいる場合、AIがテキストを生成する際にチャットが自動的にスクロールします。
- チャットパネルに細いスクロールバーを表示する。
- 新しいチャットを開始する際にチャット履歴を表示する。
コードベースと一緒に使用する
デフォルトのコードベースチャット
コードベースが インデックス化されていない 場合、Cursor Chat はまず、コードベース内で検索するためのいくつかの検索クエリを計算しようとします。より高い精度を得るためには、埋め込み検索 を使用することをお勧めします。
埋め込み検索
コードベースインデックス を使用すると、Cursor Chat はあなたのコードベースに基づいて正確な応答を生成できます。
入力メッセージの後に Ctrl/⌘ + Enter
を押すと、Cursor Chat はインデックス化されたコードベースをスキャンして関連するコードスニペットを見つけます。これは、会話のコンテキストに含めるべきコードスニペットを迅速に含める場合に適しています。コードベース検索をより細かく制御し、より高い精度を得るためには、@codebase
を使用できます。
高度なコードベース検索
@Codebase
を使用すると、Cursor コードベースチャットはより詳細な検索を行います。
@Codebase
に関する詳細は こちら でご覧いただけます。
適用
Cursor の Apply
機能を使用すると、チャット内のコードブロックの提案を迅速にコードに統合できます。
コードブロックを適用する
コードブロックの提案を適用するには、各チャットコードブロックの右上にある再生ボタンをクリックします。
これにより、チャットが生成したコードをファイルに統合するための編集が行われます。チャットで最も多くのコンテキストを追加し、モデルと最も多くのやり取りができるため、より複雑なAI駆動のコード変更にはチャット + 適用機能を使用することをお勧めします。
承認または拒否
コードブロックを適用した後、差分を確認し、変更を承認または拒否できます。また、チャットコードブロックの右上にある「Accept」または「Reject」ボタンをクリックすることもできます。
Ctrl/⌘ Enter
で承認、Ctrl/⌘ Backspace
で拒否します。