この文章は、Cursor 3.11 の新機能3つを一気に使いこなすためのガイドです。サイドチャットでメインのAgentに質問しても邪魔しない(中断しない)方法、Cmd+Kで端末内の数千件の古い会話を全文検索する方法、さらにHooksで重要な節目に介入してサブAgentを監視・制御する方法を紹介します。動作するhooks.jsonの完全な例と、クラウドAgentで踏みがちな落とし穴も付けます。 (前置き:マスク旗下のSpaceXAIが最強モデル「Grok 4.5」を正式リリース!Cursorと手を組み、AIコーディング・エージェントに猛攻撃。Office業務ソフトを完璧に統合) (補足背景:Cursor Mobileが上線:専用アプリで、スマホからより便利にAIにコードを書かせ、成果を監督できます)
目次
Toggle
メインAgentは大規模なリファクタリングを実行中で、あなたはふと「この関数が他の場所で呼ばれていないか」を確認したくなる。これまでは、停止して切り替え、進行中のタスクを中断するしかなかった。Cursor 3.11(2026年7月10日公開)で追加されたサイドチャット、対話検索、クラウドAgent Hooksの3つの機能が、ちょうど「メインの流れを中断したくない」という課題を解決してくれる。
この記事は、すでにCursorのAgentを使っていることを前提に、3つの新機能を一度に使いこなす手順を案内し、hooks.jsonの例と、クラウドで踏みがちな落とし穴を紹介する。
サイドチャット(side chat)が解決するのは、かなり具体的なシーンです。メインAgentが長いタスクを実行しているとき、そこから外れて質問したい。でも中断はしたくない。
サイドチャットを開く方法は3つあります。使いやすいものを選びましょう:
開いたサイドチャットはメインの会話のcontext(上下文)をそのまま継承します。なので、背景をもう一度貼り直す必要がありません。いま何をやっているかはもう分かっています。
ここで最も誤解しやすいのは、サイドチャットはデフォルトでは「読み取り・検索・回答」の3つだけを行い、あなたのコードは触らないことです。目的は、追い質問、調べもの、別ルートのリサーチ、または手を動かす前に意思決定をsanity-check(素早く検証)すること。メインAgent側はまったく影響を受けず、走り続けます。本当に何かを変えたいなら、会話の中で明確に指示する必要があります。
各サイドチャットは完全で長期的に保持されるAgentの対話で、聞き終わったら捨てるものではありません。あとで戻って見たり、さらに追い質問できます。役に立つ結論が見つかったら、@でそのサイドチャットをメイン対話に持ち帰ると、contextがメインチャットの流れに合流します。
私の経験だと、サイドチャットが特に役立つのは「これは何?」を聞くことより、「メインAgentはこう直すつもりだが、Xに影響しそうで不安。Xが別の場所で依存されてないか、先に確認して」といったケースです。メインの作業は進み続け、あなたは横で検証する。2つの線は互いに詰まらせません。
「先週のあのAgentの対話で、あのbugをどう解決したか」を探そうと思うと、これまでは会話名やPR番号に頼って地道に探すしかなくてつらかった。3.11では検索が組み込まれました。しかも2つのレイヤーがあります。
Agents Window(Agentの対話ウィンドウ)でCmd+Kを押すとコマンドパレットが呼び出され、会話名やPR番号だけでなく、Agentの対話内容(transcript)を直接検索できます。Cursorはローカルに検索インデックスを作るので、数千件の対話をためていても検索は非常に高速です。
インデックスはローカルに作られるため、検索のために内容がクラウドへ投げられることはありません。プライバシーを気にする人には安心材料です。
いま見ているこの長い対話の中で、特定の箇所を探したいだけならCmd+Fで十分です。match counter(ヒット件数カウント)が出て、該当箇所の間をジャンプできます。長いtranscriptをスクロールしながらでも検索できます。
ここで注意点があります。アップグレード後はインデックスの作成に少し時間がかかります。旧対話が一時的に見つからない、またはchat historyが空っぽに見える場合は、インデックスが走り終わるまで待ってみてください。通常はデータが消えたわけではありません。
Hooks(ハンドル/掛け金具)は、今回の開発者向けアップデートでも特に重みのある変更です。Agentの対話の重要な節点に自分のスクリプトを紐づけると、Agentがその節点に到達した瞬間に、自動であなたのスクリプトが実行されます。
3.11で追加されたこれらの節点は、Agentの1ターンの対話における重要なタイミングをカバーします:
これらの節点があると、次の3つができます。実行の全体を監視すること、子Agentが起動する前後で制御すること、そして自動的に誤りを修正(self-correcting)するループを組むこと。たとえば、Agentが返信をしたら自動でテストを走らせ、失敗したらエラーをAgentに投げて自分で直させる、といった具合です。
Hooksの設定はhooks.jsonに書き、versionは固定で1を入れます。置き場所は3つあり、存在するものはすべて実行されます:
最小で動く例として、2つのことを行います。毎回Agentがファイルを変更したら監査(audit)スクリプトを走らせ、タスク停止時には1行記録を残します:
{ "version": 1, "hooks": { "afterFileEdit": [ { "command": "./hooks/audit.sh" } ], "stop": [ { "command": "./hooks/on-stop.sh" } ] } }
command内のパスはhooks.jsonのある場所からの相対パスです。あなたのスクリプトはstdin(標準入力)から、conversation_id、generation_id、model、hook_event_nameなどの基本フィールドを含むJSONを受け取ります。さらに、その節点に関連するフィールドも入ります。たとえばbeforeSubmitPromptならpromptが入り、afterAgentResponseなら返信テキストが入ります。
何もしないが、受け取ったデータがあることだけ確認するスクリプトはこんな感じです:
#!/bin/bash cat > /dev/null # stdinを読んで捨てる exit 0 # 成功を返す
ここには踏みがちな落とし穴があります。すべてのhookが動作を止められるわけではありません。beforeShellExecution(シェルコマンドを実行する前)とbeforeMCPExecution(MCPツールを呼び出す前)の2つの節点だけが、stdout(標準出力)で返すJSONを見て許可するかどうかを判断します:
{ "continue": true, "permission": "allow", "userMessage": "あなたに表示されるメッセージ", "agentMessage": "AIに表示されるメッセージ" }
permissionはallowなら通過、denyならブロック、askならあなたに確認します。afterAgentResponseなど他の節点では、permissionを返しても無視されます。それらは観察・記録・別の動作のトリガーを行うだけで、遮断はできません。
HooksをクラウドAgent(cloud agent)に使うと、失効してしまう節点があります。それはbeforeSubmitPromptです。理由は現実的で、このhookはsessionの開始時点のライフサイクルに紐づけられますが、クラウド側の仮想マシン(VM)はsession開始後に作られるため、session開始直後の瞬間には機械が存在しません。だから、最初からあなたのhookを走らせることができないのです。
私の経験としては、クラウドで使うなら「ツール実行の前後」に紐づく節点を選ぶべきです。たとえばbeforeShellExecution、afterFileEdit、subagentStart、subagentStop、stopなどは比較的安定しています。「session開始のごく最初」系に紐づけるのは期待しないほうがいいです。
3つの機能は別々に説明されますが、実際に「つなげた感覚」を確かめるためには自分で試すのが重要です。具体例を挙げます:
メインAgentが、複数ファイルにまたがるリファクタリングを実行中です。あなたはサイドチャット(/side)を開き、「この変更対象のインターフェースは、いったい何カ所で使われているのか」を調べます。メインの作業は止まりません。調べた結果、リスクがあると思ったら、@でサイドチャットの結論をメイン対話へ持ち帰り、メインAgentにその複数箇所も同時に処理させます。同時にhooks.jsonの中にはstop節点を用意しておき、リファクタリングが終わったら自動でテストを走らせます。最後にCmd+Fでこの長い対話に戻って、先ほどAgentが「どの関数を動かした」と言っていたかを探します。
一通りやり終えてみると、中断されることなく、やりたかったことは全部完了しています。
Q1. サイドチャットは私のコードを変更しますか? A:いいえ。デフォルトでは読み取り・検索・回答の3つだけを行い、目的は検証と追い質問です。コードを実際に変更させるには、会話の中で明確に指示する必要があります。
Q2. サイドチャットを閉じたら消えますか? A:消えません。各サイドチャットは長期保存される完全なAgentの対話です。あとで戻って確認したり、さらに追い質問したりできますし、@でメイン対話に持ち帰ることもできます。
Q3. Cmd+Kの対話検索はクラウドですか?それともローカルですか? A:ローカルです。Cursorはあなたのコンピュータ本体に検索インデックスを作り、検索のために内容がアップロードされません。数千件の対話までなら、かなり高速に動きます。
Q4. アップグレード直後、旧対話が検索できない/chat historyが空に見えるのはなぜ? A:多くの場合、ローカルのインデックスがまだ作成中です。走り終わるまで待ってから確認してください。通常はデータが消えたわけではありません。
Q5. HooksはクラウドAgentとローカルで何が違いますか? A:最大の違いはbeforeSubmitPromptがクラウドでは動かないことです。session開始直後、クラウドのVMがまだ建てられていないためです。ツール実行の前後に紐づく節点、たとえばbeforeShellExecution、afterFileEdit、subagentStartでは、クラウド側でも比較的安定しています。
Q6. hooks.jsonはどこに置くと有効になりますか? A:プロジェクトの .cursor/hooks.json、ユーザー全域の ~/.cursor/hooks.json、企業の /etc/cursor/hooks.json のいずれか(または複数)です。存在する位置のものは3つとも実行されます。
Q7. hookで危険なコマンドを直接ブロックできますか? A:できます。ただしbeforeShellExecutionとbeforeMCPExecutionの2つの節点だけが、stdoutで返すpermissionを理解します。denyを入れればブロックできます。ほかの節点は観察やトリガーはできますが、遮断はできません。
321.71K 人気度
71.08K 人気度
3.99M 人気度
863.09K 人気度
182.79K 人気度
Cursor バージョン3.11 機能チュートリアル:サイドチャットがメインウィンドウを中断しない、Cmd+Kで過去の会話を表示し直す
この文章は、Cursor 3.11 の新機能3つを一気に使いこなすためのガイドです。サイドチャットでメインのAgentに質問しても邪魔しない(中断しない)方法、Cmd+Kで端末内の数千件の古い会話を全文検索する方法、さらにHooksで重要な節目に介入してサブAgentを監視・制御する方法を紹介します。動作するhooks.jsonの完全な例と、クラウドAgentで踏みがちな落とし穴も付けます。
(前置き:マスク旗下のSpaceXAIが最強モデル「Grok 4.5」を正式リリース!Cursorと手を組み、AIコーディング・エージェントに猛攻撃。Office業務ソフトを完璧に統合)
(補足背景:Cursor Mobileが上線:専用アプリで、スマホからより便利にAIにコードを書かせ、成果を監督できます)
目次
Toggle
メインAgentは大規模なリファクタリングを実行中で、あなたはふと「この関数が他の場所で呼ばれていないか」を確認したくなる。これまでは、停止して切り替え、進行中のタスクを中断するしかなかった。Cursor 3.11(2026年7月10日公開)で追加されたサイドチャット、対話検索、クラウドAgent Hooksの3つの機能が、ちょうど「メインの流れを中断したくない」という課題を解決してくれる。
この記事は、すでにCursorのAgentを使っていることを前提に、3つの新機能を一度に使いこなす手順を案内し、hooks.jsonの例と、クラウドで踏みがちな落とし穴を紹介する。
本記事の概要
サイドチャットでメインAgentを止めない:contextを継承した別チャットを開く
サイドチャット(side chat)が解決するのは、かなり具体的なシーンです。メインAgentが長いタスクを実行しているとき、そこから外れて質問したい。でも中断はしたくない。
サイドチャットを開く方法は3つあります。使いやすいものを選びましょう:
開いたサイドチャットはメインの会話のcontext(上下文)をそのまま継承します。なので、背景をもう一度貼り直す必要がありません。いま何をやっているかはもう分かっています。
ここで最も誤解しやすいのは、サイドチャットはデフォルトでは「読み取り・検索・回答」の3つだけを行い、あなたのコードは触らないことです。目的は、追い質問、調べもの、別ルートのリサーチ、または手を動かす前に意思決定をsanity-check(素早く検証)すること。メインAgent側はまったく影響を受けず、走り続けます。本当に何かを変えたいなら、会話の中で明確に指示する必要があります。
各サイドチャットは完全で長期的に保持されるAgentの対話で、聞き終わったら捨てるものではありません。あとで戻って見たり、さらに追い質問できます。役に立つ結論が見つかったら、@でそのサイドチャットをメイン対話に持ち帰ると、contextがメインチャットの流れに合流します。
私の経験だと、サイドチャットが特に役立つのは「これは何?」を聞くことより、「メインAgentはこう直すつもりだが、Xに影響しそうで不安。Xが別の場所で依存されてないか、先に確認して」といったケースです。メインの作業は進み続け、あなたは横で検証する。2つの線は互いに詰まらせません。
Cmd+Kで端末内の数千件の旧対話を翻す、Cmd+Fでこの会話を調べる
「先週のあのAgentの対話で、あのbugをどう解決したか」を探そうと思うと、これまでは会話名やPR番号に頼って地道に探すしかなくてつらかった。3.11では検索が組み込まれました。しかも2つのレイヤーがあります。
すべての旧対話を検索:Agents WindowでCmd+K
Agents Window(Agentの対話ウィンドウ)でCmd+Kを押すとコマンドパレットが呼び出され、会話名やPR番号だけでなく、Agentの対話内容(transcript)を直接検索できます。Cursorはローカルに検索インデックスを作るので、数千件の対話をためていても検索は非常に高速です。
インデックスはローカルに作られるため、検索のために内容がクラウドへ投げられることはありません。プライバシーを気にする人には安心材料です。
この会話を検索:Cmd+F
いま見ているこの長い対話の中で、特定の箇所を探したいだけならCmd+Fで十分です。match counter(ヒット件数カウント)が出て、該当箇所の間をジャンプできます。長いtranscriptをスクロールしながらでも検索できます。
ここで注意点があります。アップグレード後はインデックスの作成に少し時間がかかります。旧対話が一時的に見つからない、またはchat historyが空っぽに見える場合は、インデックスが走り終わるまで待ってみてください。通常はデータが消えたわけではありません。
クラウドAgent Hooksで重要な節点に介入し、監視と制御で子Agentを動かす
Hooks(ハンドル/掛け金具)は、今回の開発者向けアップデートでも特に重みのある変更です。Agentの対話の重要な節点に自分のスクリプトを紐づけると、Agentがその節点に到達した瞬間に、自動であなたのスクリプトが実行されます。
3.11で追加されたこれらの節点は、Agentの1ターンの対話における重要なタイミングをカバーします:
これらの節点があると、次の3つができます。実行の全体を監視すること、子Agentが起動する前後で制御すること、そして自動的に誤りを修正(self-correcting)するループを組むこと。たとえば、Agentが返信をしたら自動でテストを走らせ、失敗したらエラーをAgentに投げて自分で直させる、といった具合です。
hooks.jsonの書き方、置き場所
Hooksの設定はhooks.jsonに書き、versionは固定で1を入れます。置き場所は3つあり、存在するものはすべて実行されます:
最小で動く例として、2つのことを行います。毎回Agentがファイルを変更したら監査(audit)スクリプトを走らせ、タスク停止時には1行記録を残します:
command内のパスはhooks.jsonのある場所からの相対パスです。あなたのスクリプトはstdin(標準入力)から、conversation_id、generation_id、model、hook_event_nameなどの基本フィールドを含むJSONを受け取ります。さらに、その節点に関連するフィールドも入ります。たとえばbeforeSubmitPromptならpromptが入り、afterAgentResponseなら返信テキストが入ります。
何もしないが、受け取ったデータがあることだけ確認するスクリプトはこんな感じです:
ある動作を止めたい:認識されるのは2つの節点だけ
ここには踏みがちな落とし穴があります。すべてのhookが動作を止められるわけではありません。beforeShellExecution(シェルコマンドを実行する前)とbeforeMCPExecution(MCPツールを呼び出す前)の2つの節点だけが、stdout(標準出力)で返すJSONを見て許可するかどうかを判断します:
permissionはallowなら通過、denyならブロック、askならあなたに確認します。afterAgentResponseなど他の節点では、permissionを返しても無視されます。それらは観察・記録・別の動作のトリガーを行うだけで、遮断はできません。
クラウドAgentの落とし穴
HooksをクラウドAgent(cloud agent)に使うと、失効してしまう節点があります。それはbeforeSubmitPromptです。理由は現実的で、このhookはsessionの開始時点のライフサイクルに紐づけられますが、クラウド側の仮想マシン(VM)はsession開始後に作られるため、session開始直後の瞬間には機械が存在しません。だから、最初からあなたのhookを走らせることができないのです。
私の経験としては、クラウドで使うなら「ツール実行の前後」に紐づく節点を選ぶべきです。たとえばbeforeShellExecution、afterFileEdit、subagentStart、subagentStop、stopなどは比較的安定しています。「session開始のごく最初」系に紐づけるのは期待しないほうがいいです。
三つの機能をつなげる
3つの機能は別々に説明されますが、実際に「つなげた感覚」を確かめるためには自分で試すのが重要です。具体例を挙げます:
メインAgentが、複数ファイルにまたがるリファクタリングを実行中です。あなたはサイドチャット(/side)を開き、「この変更対象のインターフェースは、いったい何カ所で使われているのか」を調べます。メインの作業は止まりません。調べた結果、リスクがあると思ったら、@でサイドチャットの結論をメイン対話へ持ち帰り、メインAgentにその複数箇所も同時に処理させます。同時にhooks.jsonの中にはstop節点を用意しておき、リファクタリングが終わったら自動でテストを走らせます。最後にCmd+Fでこの長い対話に戻って、先ほどAgentが「どの関数を動かした」と言っていたかを探します。
一通りやり終えてみると、中断されることなく、やりたかったことは全部完了しています。
付録:拡張リソース
よくある質問
Q1. サイドチャットは私のコードを変更しますか?
A:いいえ。デフォルトでは読み取り・検索・回答の3つだけを行い、目的は検証と追い質問です。コードを実際に変更させるには、会話の中で明確に指示する必要があります。
Q2. サイドチャットを閉じたら消えますか?
A:消えません。各サイドチャットは長期保存される完全なAgentの対話です。あとで戻って確認したり、さらに追い質問したりできますし、@でメイン対話に持ち帰ることもできます。
Q3. Cmd+Kの対話検索はクラウドですか?それともローカルですか?
A:ローカルです。Cursorはあなたのコンピュータ本体に検索インデックスを作り、検索のために内容がアップロードされません。数千件の対話までなら、かなり高速に動きます。
Q4. アップグレード直後、旧対話が検索できない/chat historyが空に見えるのはなぜ?
A:多くの場合、ローカルのインデックスがまだ作成中です。走り終わるまで待ってから確認してください。通常はデータが消えたわけではありません。
Q5. HooksはクラウドAgentとローカルで何が違いますか?
A:最大の違いはbeforeSubmitPromptがクラウドでは動かないことです。session開始直後、クラウドのVMがまだ建てられていないためです。ツール実行の前後に紐づく節点、たとえばbeforeShellExecution、afterFileEdit、subagentStartでは、クラウド側でも比較的安定しています。
Q6. hooks.jsonはどこに置くと有効になりますか?
A:プロジェクトの .cursor/hooks.json、ユーザー全域の ~/.cursor/hooks.json、企業の /etc/cursor/hooks.json のいずれか(または複数)です。存在する位置のものは3つとも実行されます。
Q7. hookで危険なコマンドを直接ブロックできますか?
A:できます。ただしbeforeShellExecutionとbeforeMCPExecutionの2つの節点だけが、stdoutで返すpermissionを理解します。denyを入れればブロックできます。ほかの節点は観察やトリガーはできますが、遮断はできません。