在 CLAUDE.md 寫「請講重點」為什麼常常沒用:Concise 每一輪都提醒它一次
寫於 2026 年 8 月 20 至 21 日(補 8 月 20 日的排程),9 月才上線(部落格的發佈額度在 8 月中用完了,稿子積壓了三週)。文中的版本號與「目前」都指 8 月 20 至 21 日的狀態,Claude Code 更新很快,你讀到時可能已經又改過了。
去年這個時候,想讓它少講廢話的標準做法是在 CLAUDE.md 裡寫一行「請直接講結論,不要前言」。
我寫過。有效大約三十分鐘,然後它又開始「好的,我來幫您檢查這個檔案,首先我會先讀取相關程式碼,接著分析可能的原因……」。
於是大家開始加碼。有人把那行改成全大寫,有人加驚嘆號,有人在每次 prompt 結尾都補一句「簡短回答」。這些做法都會短暫有效,然後失效,然後你會懷疑是自己的措辭不夠強硬。
不是措辭的問題。是那行字放錯地方了。
中間這一段,大家是這樣湊合的
六月的時候我寫過 output style 的教學(Claude Code Output Styles 完整教學),當時的重點是它跟 CLAUDE.md 存的東西不同層:CLAUDE.md 存「這個專案是什麼、碰哪幾個檔」,output style 存「Claude 這個角色怎麼說話」。
當時內建的 style 只有兩個,剩下的要自己寫 markdown 丟進 ~/.claude/output-styles/。所以想要「講重點」的人,多數還是留在 CLAUDE.md 那條路上,因為自己寫一個 style 檔要動手,而在 memory 裡加一行字不用。
8 月 20 日這版把這件事收進產品裡了。
轉捩點:官方自己做了一個
v2.1.237 的 changelog 原文:
Added a built-in “Concise” output style: Claude leads with results and skips preamble and narration, while doing the work just as thoroughly. Select it under Output style in /config.
一個官方版的「請講重點」。
我原本以為這就只是把大家常寫的那段話收進去當預設值。實際去看之後發現不是。它的做法跟你在 CLAUDE.md 寫那行字,在機制上是兩件不同的事。
挖開來看
我在本機(macOS)把 Claude Code 的執行檔字串抓出來看。路徑是 ~/.local/share/claude/versions/2.1.238,也就是這台機器上目前這份執行檔。內建 style 的定義是這樣的結構(照抄挖到的字串):
1 | Concise: { |
四個欄位值得逐個看。
prompt 那一段的第一句是 You are an interactive CLI tool that helps users with software engineering tasks.,這是 system prompt 的開場句。四個內建 style 的 prompt 全部從這句開始,然後接自己的行為描述。也就是說,換 output style 換掉的是它對「我是誰」的定義,不是在一長串指示後面追加一句要求。
keepCodingInstructions: true 說明工程能力那部分的指示保留著。換說話方式不會換掉它會做的事,這跟六月那篇的結論一致。
turnReminder 是這次最有意思的東西,而且它解釋了整篇文章的標題。這句 Be concise: lead with the result, skip preamble and narration, keep only what the user needs. 是每一輪都會重新出現的提醒。
還有一句我在其中一個 style 的 prompt 尾段挖到,值得單獨抄下來:
1 | Where these rules conflict with more general communication or formatting |
衝突的時候,這些規則贏。
為什麼放在 CLAUDE.md 會慢慢失效
把上面兩件事合起來,答案就出來了。
CLAUDE.md 的內容是一次性載入的。它在對話開頭進來,然後你們聊了四十輪,中間讀了六個檔案、跑了十次測試、貼了三段錯誤訊息。那行「請講重點」還在 context 裡,但它前面已經堆了幾萬個 token 的其他東西,而且它跟後來出現的所有內容平等競爭注意力。
turnReminder 是每一輪重新注入的。它永遠是最新的那句話之一。
這件事有個生活裡的對應。你在冰箱門上貼一張「少喝可樂」的紙條——第一天有效,第三週你根本不會看到那張紙,它已經變成冰箱的一部分。而每次你開冰箱都有人在旁邊說一次「少喝可樂」,效果完全不同,甚至有點討人厭。
討人厭正是它有效的原因。
再加上那句「衝突時這些規則贏」,就把第二個問題也解掉了:你在 CLAUDE.md 裡寫的要求,跟系統本身關於溝通與格式的指引衝突時,誰贏是沒有明文規定的;output style 直接寫死了優先序。
本機這版的內建清單有四個
順手把四個都抓出來,用它們自己的 description:
| Style | 官方描述 |
|---|---|
Proactive |
Claude executes immediately, minimizes interruptions, and prefers action over planning |
Concise |
Claude responds tersely, leading with results and skipping preamble and narration |
Explanatory |
Claude explains its implementation choices and codebase patterns |
Learning |
Claude pauses and asks you to write small pieces of code for hands-on practice |
六月我寫那篇的時候是兩個。現在是四個。
值得注意的是這四個的性質不太一樣。Explanatory 跟 Learning 是給你多一點東西(解說、練習),Concise 跟 Proactive 是給你少一點東西(少廢話、少打斷)。前兩個是教學工具,後兩個是行為開關。
同一個機制長出兩種完全不同用途的東西,通常是這個抽象層設計對了的訊號。
另外挖到的字串顯示 plugin 也可以提供 output-styles/ 目錄,所以 style 不只有內建跟你自己寫的,還有一條從外掛來的路。這條我沒有實際裝過帶 style 的外掛,只是看到那個載入路徑存在。
怎麼用
/config 裡選 Output style,挑 Concise。就這樣,沒有第二步。
要判斷它有沒有生效,看它回答的第一句話。生效的話第一句就是結果;沒生效的話第一句會是「我來幫您……」。
有一件事別誤會。它不會讓 Claude 少做事。changelog 那句 while doing the work just as thoroughly 跟 prompt 裡的 while doing the work just as thoroughly 是同一件事,講的是敘述變少、工作量不變。如果你發現它連該做的檢查都跳過了,那是別的問題,不要怪 style。
反過來也要提醒:如果你的工作需要看它的推理過程(教別人、審查它的判斷、除一個很難的 bug),Concise 會讓你少掉一大塊你其實需要的資訊。那種場合 Explanatory 才對。
我實測到什麼、沒測到什麼
實測到的:本機 claude --version 回報 2.1.237、執行檔在 ~/.local/share/claude/versions/2.1.238,從那份執行檔挖出四個內建 style 的定義結構、各自的 description、keepCodingInstructions 欄位、Concise 的 turnReminder 全文,以及那句「衝突時這些規則贏」。我的 ~/.claude/ 底下沒有 output-styles/ 目錄,settings.json 也沒有 outputStyle 這個 key,所以我這台目前是走預設值。
沒測到的:我沒有實際切到 Concise 跑一段對話比較前後差異,所以「每輪注入的提醒比一次性載入更有效」這件事,我的依據是機制(一次性載入 vs 每輪注入)跟那句明文的優先序宣告,不是我自己跑出來的 A/B 對照。四個 style 裡我只確認 Concise 是 8 月 20 日這版加的,Proactive 是什麼時候進來的我沒查。
字串是從二進位檔挖的,欄位名與內容是真的,但我看不到它們在執行期怎麼組裝:turnReminder 具體插在每一輪的哪個位置,我只知道它存在,不知道它長在哪。
接下來會內建什麼
從兩個變四個,這件事本身比 Concise 有意思。
output style 一開始是「你想讓它換個口氣說話」的客製點,現在正在變成產品的行為開關——Proactive 那個描述(立刻執行、少打斷、行動優先於規劃)已經不是說話方式了,那是工作方式。
如果這個方向繼續走,下一批內建的多半也是這類:不是講話風格,是行為傾向。等到那天,/config 裡那個下拉選單就不再是「語氣」的選單,而是「你今天要哪一種同事」的選單。
在那之前,先把冰箱門上那張紙條撕下來吧。它三週前就已經隱形了。
來源
- Claude Code CHANGELOG(v2.1.237)
- 本機實測:macOS,
claude --version回報 2.1.237,執行檔~/.local/share/claude/versions/2.1.238

























































































































































































