這篇帶你把 Cursor 3.11 的三個新功能一次上手,開側邊聊天問問題不打斷主 Agent、用 Cmd+K 翻遍本機幾千條舊對話、再用 Hooks 在關鍵節點插手監控子 Agent。附一個完整可跑的 hooks.json 範例,和一個雲端會踩的雷。 (前情提要:馬斯克旗下 SpaceXAI 正式推出最強模型「Grok 4.5」!攜手 Cursor 猛攻 AI 編碼代理,完美整合 Office 辦公軟體 ) (背景補充:Cursor Mobile 上線:專屬 App 讓你更方便用手機指揮 AI 寫程式、監督產出 )
本文目錄
Toggle
主 Agent 正在跑一個大重構,你突然想確認某個函式在別的地方有沒有被呼叫,以前只能停下它、切走、打斷正在跑的任務。Cursor 3.11(2026 年 7 月 10 日發布)補上的側邊聊天、對話搜尋、雲端 Agent Hooks 三個功能,剛好都在解「不想打斷主線」這件事。
這篇假設你已經在用 Cursor 的 Agent,帶你把三個新功能一次上手,附一個 hooks.json 範例和一個雲端會踩的雷。
側邊聊天(side chat)解決的是一個很具體的場景,主 Agent 在跑長任務時,你想岔出去問一個問題,但不想打斷它。
開一條側邊聊天有三種方式,挑順手的用:
開出來的側邊聊天會直接繼承主對話的 context(上下文),所以你不用把背景重貼一次,它已經知道你們剛剛在弄什麼。
這一步最容易誤會的是,側邊聊天預設只做讀取、搜尋、回答這三件事,不會動你的 code。它的定位是讓你追問、查資料、研究另一條路線,或在動手前先 sanity-check(快速驗證)一個決策,主 Agent 那邊完全不受影響繼續跑。你要它真的改東西,得在對話裡明講。
每一條側邊聊天都是完整、長期保留的 Agent 對話,不是問完就丟。你可以稍後回訪、繼續追問。查到有用的結論,用 @ 把這條側邊聊天帶回主對話,context 就接回主線了。
我自己經驗是,側邊聊天最好用的地方不是問「這是什麼」,而是「主 Agent 打算這樣改,但我懷疑會動到 X,你先幫我確認 X 有沒有被別的地方依賴」。主線繼續前進,你在旁邊查證,兩條線不互相卡。
以前想找「上週那條 Agent 對話裡它是怎麼解掉那個 bug 的」,基本只能靠對話名稱或 PR 編號慢慢認,很痛。3.11 把搜尋做進去了,而且分兩個層級。
在 Agents Window(Agent 對話視窗)按 Cmd+K 叫出命令面板,直接搜 Agent 的對話內容(transcript),不只是搜名稱和 PR 編號。Cursor 會在本機建一個搜尋索引,所以就算你累積了幾千條對話,搜起來還是很快。
因為索引建在本機,內容不會為了搜尋被丟上雲端,這點對在意隱私的人比較安心。
如果你只是要在正在看的這條長對話裡找某段,按 Cmd+F 就好。它會給你 match counter(符合筆數計數),可以在符合的段落之間跳,長 transcript 邊往下滾還能邊搜。
這一步要注意,剛升級完索引需要一點時間建,如果你發現舊對話一時搜不到、或 chat history 看起來空空的,先等索引跑完再看,通常不是資料掉了。
Hooks(掛鉤)是這次對開發者最有份量的更新。它讓你在 Agent 對話的關鍵節點掛上自己的指令碼,Agent 走到那個節點就自動觸發你的指令。
3.11 這批新增的節點,涵蓋了 Agent 一輪對話的幾個關鍵時刻:
有了這些節點,你可以做三件事,監控整個執行過程、在子 Agent 啟動前後控制它,以及搭一個自動糾錯(self-correcting)的迴圈,例如 Agent 一講完回覆就自動跑一次測試,掛了就把錯誤丟回去讓它自己修。
Hooks 設定寫在 hooks.json,version 固定填 1。放的位置有三個,只要存在都會被執行:
一個最小可跑的範例,做兩件事,每次 Agent 改完檔就跑一次稽核指令碼,任務停止時記一筆:
{ "version": 1, "hooks": { "afterFileEdit": [ { "command": "./hooks/audit.sh" } ], "stop": [ { "command": "./hooks/on-stop.sh" } ] } }
command 裡的路徑是相對於 hooks.json 所在位置。你的指令碼會從 stdin(標準輸入)收到一段 JSON,裡面有 conversation_id、generation_id、model、hook_event_name 這些基本欄位,再加上跟該節點有關的欄位,例如 beforeSubmitPrompt 會帶 prompt、afterAgentResponse 會帶回覆文字。
一個什麼都不做、只確認能收到資料的指令碼長這樣:
#!/bin/bash cat > /dev/null # 讀掉 stdin exit 0 # 回報成功
這裡有個很容易踩的雷,不是每個 hook 都能攔截動作。只有 beforeShellExecution(跑 shell 指令前)和 beforeMCPExecution(呼叫 MCP 工具前)這兩個節點,會看你 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 剛開場那一類的就別指望了。
三個功能分開講很清楚,但你應該要自己試看看串起來用的感覺。舉實際的場景:
主 Agent 在跑一個跨好幾個檔案的重構。你開一條側邊聊天(/side)去查「這個要改的介面到底有幾個地方在用」,主線不停。查完覺得有風險,用 @ 把側邊聊天的結論帶回主對話,讓主 Agent 把那幾處一起處理。同時你的 hooks.json 裡掛了一個 stop 節點,重構一結束就自動跑測試,你再用 Cmd+F 回頭在這條長對話裡,找剛剛 Agent 說它動了哪幾個函式。
一輪下來你沒被打斷過,想做的事情都做完了。
Q1. 側邊聊天會改到我的 code 嗎? A:預設不會。它只做讀取、搜尋、回答三件事,定位是讓你查證和追問。要它動手改東西,得在對話裡明講。
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,三個位置只要存在都會被執行。
Q7. 我想讓 hook 直接擋掉一個危險指令,做得到嗎? A:可以,但只有 beforeShellExecution 和 beforeMCPExecution 這兩個節點認你 stdout 回傳的 permission,填 deny 就擋下。其他節點只能觀察和觸發動作,擋不了。
31.12萬 熱度
431.47萬 熱度
221.95萬 熱度
399.28萬 熱度
85.91萬 熱度
Cursor 版本 3.11 功能教學:側邊聊天不打斷主視窗、Cmd+K 回翻舊對話
這篇帶你把 Cursor 3.11 的三個新功能一次上手,開側邊聊天問問題不打斷主 Agent、用 Cmd+K 翻遍本機幾千條舊對話、再用 Hooks 在關鍵節點插手監控子 Agent。附一個完整可跑的 hooks.json 範例,和一個雲端會踩的雷。
(前情提要:馬斯克旗下 SpaceXAI 正式推出最強模型「Grok 4.5」!攜手 Cursor 猛攻 AI 編碼代理,完美整合 Office 辦公軟體 )
(背景補充:Cursor Mobile 上線:專屬 App 讓你更方便用手機指揮 AI 寫程式、監督產出 )
本文目錄
Toggle
主 Agent 正在跑一個大重構,你突然想確認某個函式在別的地方有沒有被呼叫,以前只能停下它、切走、打斷正在跑的任務。Cursor 3.11(2026 年 7 月 10 日發布)補上的側邊聊天、對話搜尋、雲端 Agent Hooks 三個功能,剛好都在解「不想打斷主線」這件事。
這篇假設你已經在用 Cursor 的 Agent,帶你把三個新功能一次上手,附一個 hooks.json 範例和一個雲端會踩的雷。
本篇大綱
側邊聊天讓主 Agent 別停,另開一條繼承 context 的聊天
側邊聊天(side chat)解決的是一個很具體的場景,主 Agent 在跑長任務時,你想岔出去問一個問題,但不想打斷它。
開一條側邊聊天有三種方式,挑順手的用:
開出來的側邊聊天會直接繼承主對話的 context(上下文),所以你不用把背景重貼一次,它已經知道你們剛剛在弄什麼。
這一步最容易誤會的是,側邊聊天預設只做讀取、搜尋、回答這三件事,不會動你的 code。它的定位是讓你追問、查資料、研究另一條路線,或在動手前先 sanity-check(快速驗證)一個決策,主 Agent 那邊完全不受影響繼續跑。你要它真的改東西,得在對話裡明講。
每一條側邊聊天都是完整、長期保留的 Agent 對話,不是問完就丟。你可以稍後回訪、繼續追問。查到有用的結論,用 @ 把這條側邊聊天帶回主對話,context 就接回主線了。
我自己經驗是,側邊聊天最好用的地方不是問「這是什麼」,而是「主 Agent 打算這樣改,但我懷疑會動到 X,你先幫我確認 X 有沒有被別的地方依賴」。主線繼續前進,你在旁邊查證,兩條線不互相卡。
用 Cmd+K 翻本機幾千條舊對話,Cmd+F 查當前這條
以前想找「上週那條 Agent 對話裡它是怎麼解掉那個 bug 的」,基本只能靠對話名稱或 PR 編號慢慢認,很痛。3.11 把搜尋做進去了,而且分兩個層級。
搜所有舊對話,在 Agents Window 按 Cmd+K
在 Agents Window(Agent 對話視窗)按 Cmd+K 叫出命令面板,直接搜 Agent 的對話內容(transcript),不只是搜名稱和 PR 編號。Cursor 會在本機建一個搜尋索引,所以就算你累積了幾千條對話,搜起來還是很快。
因為索引建在本機,內容不會為了搜尋被丟上雲端,這點對在意隱私的人比較安心。
搜當前這條對話,按 Cmd+F
如果你只是要在正在看的這條長對話裡找某段,按 Cmd+F 就好。它會給你 match counter(符合筆數計數),可以在符合的段落之間跳,長 transcript 邊往下滾還能邊搜。
這一步要注意,剛升級完索引需要一點時間建,如果你發現舊對話一時搜不到、或 chat history 看起來空空的,先等索引跑完再看,通常不是資料掉了。
雲端 Agent Hooks 讓你在關鍵節點插手,監控加控制子 Agent
Hooks(掛鉤)是這次對開發者最有份量的更新。它讓你在 Agent 對話的關鍵節點掛上自己的指令碼,Agent 走到那個節點就自動觸發你的指令。
3.11 這批新增的節點,涵蓋了 Agent 一輪對話的幾個關鍵時刻:
有了這些節點,你可以做三件事,監控整個執行過程、在子 Agent 啟動前後控制它,以及搭一個自動糾錯(self-correcting)的迴圈,例如 Agent 一講完回覆就自動跑一次測試,掛了就把錯誤丟回去讓它自己修。
hooks.json 怎麼寫、放哪
Hooks 設定寫在 hooks.json,version 固定填 1。放的位置有三個,只要存在都會被執行:
一個最小可跑的範例,做兩件事,每次 Agent 改完檔就跑一次稽核指令碼,任務停止時記一筆:
command 裡的路徑是相對於 hooks.json 所在位置。你的指令碼會從 stdin(標準輸入)收到一段 JSON,裡面有 conversation_id、generation_id、model、hook_event_name 這些基本欄位,再加上跟該節點有關的欄位,例如 beforeSubmitPrompt 會帶 prompt、afterAgentResponse 會帶回覆文字。
一個什麼都不做、只確認能收到資料的指令碼長這樣:
想擋下某個動作,只有兩個節點認
這裡有個很容易踩的雷,不是每個 hook 都能攔截動作。只有 beforeShellExecution(跑 shell 指令前)和 beforeMCPExecution(呼叫 MCP 工具前)這兩個節點,會看你 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 剛開場那一類的就別指望了。
三個功能串起來
三個功能分開講很清楚,但你應該要自己試看看串起來用的感覺。舉實際的場景:
主 Agent 在跑一個跨好幾個檔案的重構。你開一條側邊聊天(/side)去查「這個要改的介面到底有幾個地方在用」,主線不停。查完覺得有風險,用 @ 把側邊聊天的結論帶回主對話,讓主 Agent 把那幾處一起處理。同時你的 hooks.json 裡掛了一個 stop 節點,重構一結束就自動跑測試,你再用 Cmd+F 回頭在這條長對話裡,找剛剛 Agent 說它動了哪幾個函式。
一輪下來你沒被打斷過,想做的事情都做完了。
附錄:延伸資源
常見問題
Q1. 側邊聊天會改到我的 code 嗎?
A:預設不會。它只做讀取、搜尋、回答三件事,定位是讓你查證和追問。要它動手改東西,得在對話裡明講。
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,三個位置只要存在都會被執行。
Q7. 我想讓 hook 直接擋掉一個危險指令,做得到嗎?
A:可以,但只有 beforeShellExecution 和 beforeMCPExecution 這兩個節點認你 stdout 回傳的 permission,填 deny 就擋下。其他節點只能觀察和觸發動作,擋不了。