補充 #12 · 速覽

其他官方技巧

官方文件提到、但篇幅較小的 5 個進階技巧 — 條列式速覽。

① Session 控制 — 修正、回溯、跨次延續

A · 即時修正 Course-Correct

Claude 偏掉的瞬間就要拉回來,越早越好。5 個快捷操作:

Esc 中斷它的動作,context 保留可繼續對話
Esc Esc 開啟 rewind 選單,回到任意 checkpoint
/rewind 同上,用指令打開
Undo that 直接叫它把剛才的改動倒回去
/btw 問個不想留在 context 的小問題(答案顯示後不會加入對話歷史)

💡 同一個錯誤糾正兩次後 → /clear + 寫更精準的新 prompt,比繼續糾正快

B · 延續對話 Resume Conversations

把 session 當成 workstream / git branch 管理,跨次延續任務不必重新解釋脈絡:

/rename oauth-migration

幫 session 取個描述性名字,之後找得回來

claude --continue

繼續最近一個 session

claude --resume

從清單裡選一個 session 回去

💡 對話會在本機自動保存。一個任務跨好幾天時,這幾個指令比起每次重新 onboarding 省超多時間。

🎤

② 讓 Claude 反問你 — Interview Mode

大型功能要做但你還沒想清楚 → 不要硬寫 prompt,叫它AskUserQuestion 訪談你

$ 我想做 [簡短描述功能]。

請用 AskUserQuestion 詳細訪談我。

不要問太明顯的問題,挖深難的部分。

問到全部釐清為止,然後寫成 SPEC.md。

→ 它會挖出你沒想過的 edge case、UI/UX 取捨、技術選擇。寫完 spec 後另開 fresh session 實作。

🤖

③ Non-Interactive Mode — 接 CI / pipeline

claude -p "prompt" 讓 Claude 不開 session 直接跑,可串進 CI、pre-commit hook、批次腳本。

# 單次查詢

claude -p "Explain what this project does"

# 結構化輸出給腳本用

claude -p "List all API endpoints" --output-format json

# Streaming 即時處理

claude -p "Analyze log" --output-format stream-json --verbose

→ 配 --allowedTools 限制權限,無人值守時更安全。

🧑‍🚀

④ Subagent 兩種用法 — 調查 & 對抗性 Review

官方把 subagent 列為「最強工具之一」(one of the most powerful tools available) — 因為它跑在獨立的 context window,回報摘要給你,主對話完全不被污染。

A · 大量調查 Investigation(主流用法)

需要看大量檔案才能回答的問題 → 丟給 subagent 探索,主 session context 保持乾淨

$ 用 subagent 調查我們的 auth 系統怎麼處理

token refresh,以及有沒有現成的 OAuth 工具

可以重用。

# investigate auth token refresh & existing OAuth utils

→ Subagent 讀爆 30 個檔案、燒它自己的 context;回報「答案在 src/auth/refresh.ts:47,已有 OAuthClient 可用」。你的主對話只多了一段摘要。

B · 對抗性 Review Adversarial Review

Claude 跑很久之後,找一個沒看過實作過程的 subagent 來 review diff。看到的只有結果跟標準,不會被「我剛剛這樣寫」帶偏。

$ 用 subagent 對照 PLAN.md review

這份 rate limiter 的 diff。

# review rate limiter diff against PLAN.md

# 或直接用內建 /code-review skill

⚠️ 官方警告 — 不要追每個 finding

Reviewer 被指派找碴,就算實作沒問題也會回報問題。追每個 finding 會導致過度工程(over-engineering):

  • • 多餘的抽象層
  • • 防禦性 code 處理不可能發生的情況
  • • 為永遠不會觸發的 case 寫測試

✅ 正確做法:明確告訴 reviewer「只報影響 correctness 或 stated requirements 的 gaps」,其餘的當作 optional 看看就好。

🛡️

⑤ Permission Modes — Shift+Tab 預設切 3 檔

每個動作都按確認太煩、全自動又不安全。按 Shift+Tab 預設循環 3 個模式,Auto mode 達條件才會插入循環:

Ask before edits (default)

每個動作都問你 — 預設行為,敏感工作用。

Edit automatically (acceptEdits)

檔案編輯自動過,但 shell 命令仍問你 — 邊改邊在編輯器看 diff。

Plan mode (plan)

只讀檔、跑探索性指令、寫計畫 — 不會動到任何 source。

⭐ Auto mode (auto) · 條件達成才出現

全自動執行 + 背景 classifier 自動擋風險動作。要符合所有條件才會出現在 Shift+Tab cycle:

  • • 方案需符合條件
  • • 模型需符合條件
  • • Team / Enterprise 需 Admin 在管理後台啟用
  • • Provider 需符合條件
  • • 使用者第一次循環到時要 opt-in

※ 具體方案 / 模型 / Provider 名單會隨版本變動,請以官方 Permission Modes 文件為準

⚙️ 另外兩個進階模式(dontAsk 不進循環;bypassPermissions 需啟用後才可能進循環):

dontAsk — CI 用,只跑白名單,其餘全擋
bypassPermissions — 跳過全部檢查,容器/VM 內才用

💡 另外還有兩個獨立工具疊在 mode 之上:/permissions 設細粒度規則(allowlist/deny)、/sandbox 做 OS 級隔離。

# 一句話心法