Anthropic 不會告訴你的 18 個 Claude 設置,老用戶全在偷偷用

作者:AI 博物院
日期:2026年5月26日 上午8:08
來源:WeChat 原文

整理版優先睇

速讀 5 個重點 高亮

Anthropic 唔會話你知嘅 18 個 Claude 設置,老用戶偷偷用緊

整理版摘要

呢篇文章係整理自 X 上嘅工程師 Mnilax 嘅 thread,佢根據自己同身邊一班重度 Claude 用戶嘅經驗,發現好多「Claude 變笨咗」嘅情況其實唔關模型事,而係默認配置食咗錢同效能。

Mnilax 指出,Anthropic 產品更新快,官方文檔只覆蓋咗大約 40 個設置鍵,但 Claude Code binary 入面有超過 125 個。佢透過翻 GitHub issue、睇 Discord 截圖、甚至直接 grep binary 先揾到呢 18 個隱藏設置。結論係:默認值係俾平均用戶,而你唔係平均用戶。你嘅工作流、項目模式、成本敏感度都唔同,默認值用耐咗就會拖低效能同浪費金錢。

文章按 Claude.aiClaude CodeAPI 三層列出 18 個設置,每個都有一句修法,最後仲俾咗一份 20 分鐘可以跑完嘅清單同一個每週審計腳本。作者(轉譯者)加咗自己嘅延伸點評,提醒讀者今晚要抽時間對住清單逐項檢查。

  • Claude 變笨好多時係默認值問題,唔係模型退化:記憶全局作用域令內容漂移、插件同 MCP 服務器白扣 token、擴展思考喺簡單任務浪費 token 同時間。
  • Claude.ai 記憶一定要改做「按項目」,可以解決 80% 嘅上下文污染;同時記住用「forget what you remembered about [話題]」即時清理記憶。
  • 自定義樣式係一份輸出合同,可以貼 200-1500 字嘅指令文件替代常用 prompt,Mnilax 用三份樣式替走咗 80% 嘅 prompt 收藏。
  • Claude Code 嘅 enabledPlugins 同 mcpServers 要用 enabled 標誌禁用唔用嘅,一個未用嘅插件/服務器每次會話扣幾千 token;SessionStart 鈎子按分支加載上下文可以減 30% 上下文佔用。
  • API 嘅 cache_control 斷點要放喺穩定 system prompt 後面,唔好放喺用戶消息後面;TTL 設 1 小時,自建 Agent 可以慳好多錢。
值得記低
Skill

Claude.ai 自定義樣式:X 草稿模板

開頭必須俾一個具體數字或一個具體名字。唔好「我最近喺諗……」。句子儘量控制喺 18 個字以內。唔要破折號,除非節奏需要。禁用詞:delve、leverage、robust、unlock、game-changing。列舉三項以上用減號列表,唔用編號。結尾必須係陳述句,唔好反問。

流程

Claude Code settings.json 完整模板

Mnilax 整合嘅 settings.json 模板,包含 model、enabledPlugins、permissions.deny、hooks.SessionStart、disableAllHooks、mcpServers、cleanupPeriodDays 等設定,可直接複製修改。

工具

每週 Claude Code 審計腳本 claude-audit.sh

Shell 腳本,用 jq 檢查 enabledPlugins 數量、MCP 服務器數量、deny 規則數、SessionStart 鈎子數、cleanupPeriodDays 值,全部設有目標。

整理重點

Claude.ai:5 個先鬱嘅設置

記憶開項目作用域:設置 → 能力 → 記憶 → 項目作用域。默認係全局存,會搞到一個項目嘅嘢喺另一個聊天度出現,例如講過鍾意 tab 縮進,寫銷售文案時突然彈段 Python 仲用 tab。改做按項目就解決 80% 嘅漂移。

另外兩件順手做:將唔想被記嘅話題(醫療、薪資、客戶名)加到排除列表;任何聊天直接講「forget what you remembered about [話題]」,Claude 會現場比對記憶庫話你知刪咗咩。

擴展思考默認設成 Light:路徑係聊天框 → 模型選擇下拉 → Extended Thinking。對數學、調試、多步規劃有用,但對總結、翻譯、格式化、改寫就係浪費。默認開 Full 等於所有任務都付咗難題嘅錢。Mnilax 朋友試一週,Opus token 消耗下降 18-25%。

項目說明填上,唔好留空:路徑係任意項目 → 右上角三個點 → 編輯項目說明。呢個字段相當於注入到項目每次對話嘅 system prompt。空咗的話次次要由零開始解釋。

例如 Polymarket 研究項目:呢個係 Polymarket 研究工作流。默認懷疑論。永遠展示概率算式。永遠唔推薦下注,只描述期望值。400 字以內,每月重讀一次裁一裁。

網頁搜索引用換成腳註模式:設置 → 能力 → 網頁搜索引用 → 腳註。默認內聯引用的問題係複製答案去別處時引用標記變無效佔位符。腳註模式答案乾淨,參考資料統一列喺最後。

  • 過去聊天搜索(Pro+):默認關。注意係關鍵詞匹配唔係語義匹配,要搜「中國機器人」就要原樣輸入。
  • Cowork 信任文件夾:默認每次問,但勾過「以後不再提示」嘅文件夾就入咗白名單。每兩個月去清一次。
  • 無痕模式:側欄點新建無痕聊天或快捷鍵 Cmd+Shift+N。跳過記憶寫入、聊天記錄、過去聊天搜索索引、訓練數據採集。涉及薪資、醫療、客戶名對話直接入無痕。
整理重點

Claude Code:settings.json 嘅 7 個隱藏位

enabledPlugins:禁用就好,唔好卸載。每個激活插件會加載鈎子、SKILL.md、工具 schema 入上下文預算。三個你早就忘咗嘅插件 = 未打字已經預扣三到八千 token。Mnilax 由 14 個減到 4 個。

enabledPlugins 設定範例 json
{
  "enabledPlugins": {
    "formatter@acme-tools": true,
    "deployer@acme-tools": false,
    "old-experiment@personal": false
  }
}

permissions.deny 配上,但別全靠佢:用嚟禁止 Claude 讀 .env、跑 rm -rf、調 sudo。但 GitHub issue #11544 記錄咗 bug,配置寫咗但日誌顯示 0 matchers found。建議兩層防禦:第一層正常配 deny 規則,第二層喺 OS 層 chmod 600 .env。

permissions.deny 設定範例 json
{
  "permissions": {
    "deny": [
      "Read(.env)",
      "Read(.env.*)",
      "Read(**/*secret*)",
      "Bash(rm -rf:*)",
      "Bash(sudo:*)"
    ]
  }
}
SessionStart 按分支加載範例 json
{
  "hooks": {
    "SessionStart": [{
      "matcher": "startup",
      "hooks": [{
        "type": "command",
        "command": "cat .claude/context-$(git branch --show-current).md 2>/dev/null || true"
      }]
    }]
  }
}

disableAllHooks:緊急開關。2026 年 3 月先出,知道嘅人唔多。Claude Code 抽風時一次性關曬所有鈎子,逐個開返嚟 debug。平時保持 false。

按項目覆蓋 model:喺項目 .claude/settings.json 設 model 會覆蓋全局。大部分人全局設 Opus,但做 Markdown 或 shell 嘅項目用 Haiku 就慳好多。

按項目 model 範例 json
// /docs 項目
{ "model": "claude-haiku-4-5-20251001" }
// /infra 項目
{ "model": "claude-sonnet-4-6" }
// /core-engine 項目
{ "model": "claude-opus-4-7" }

mcpServers 用 enabled 標誌,唔好刪:同 enabledPlugins 道理,每個 MCP 服務器加載完整工具 schema 入上下文,一個服務器 800-6000 token。三個月連咗 12 個,實際用 3 個,剩下 9 個未用嘅白扣 2.5 萬到 4 萬 token 嘅 schema。

mcpServers enabled 設定範例 json
{
  "mcpServers": {
    "github":   { "command": "...", "enabled": true },
    "postgres": { "command": "...", "enabled": true },
    "slack":    { "command": "...", "enabled": false },
    "linear":   { "command": "...", "enabled": false }
  }
}

cleanupPeriodDays 改成 180:默認 30 天,Dreaming(記憶鞏固)同過去聊天搜索只睇到一個月嘅記錄。改成 180 日信號量翻 6 倍,磁盤代價約 200MB。

整理重點

API / Console:3 個鍵決定賬單

cache_control 錯誤 vs 正確寫法 python
// 錯:斷點放喺用戶消息後面
messages = [
    {"role": "system", "content": SYSTEM_PROMPT},
    {"role": "user", "content": user_question,
     "cache_control": {"type": "ephemeral"}}
]

// 啱:斷點放喺穩定 system prompt 後面
messages = [
    {"role": "system", "content": SYSTEM_PROMPT,
     "cache_control": {"type": "ephemeral"}},
    {"role": "user", "content": user_question}
]

TTL 有兩檔:5 分鐘(默認)同 1 小時。會話間不變嘅 system prompt 用 1 小時。寫緩存比基礎輸入貴 25%,讀緩存平 90%。盈虧平衡點係 TTL 窗口內讀 2 次以上。

inference_geo:合規冇要求就唔好開。開咗會令 Opus 4.7 以上模型貴 10%,呢個加價唔喺標準價目表,只會出現喺賬單。問清楚係合同要求定建議性,建議性嘅話直接關。

工作區級速率限制:控制枱 → 設置 → 工作區 → [你的工作區] → 按功能速率限制。每個使用面(交互聊天、批處理、內部工具、實驗)拆一個工作區,限額設成賬户層級嘅 60-70%,預留 30% 俾需要突發嘅工作區。

仲有個隱藏設置:每個工作區內部仲有按功能維度嘅上限,只喺點入具體功能卡片時先見到,工作區總覽頁唔顯示,默認無限。如果一個工作區有三個功能,其中一個會餓死另外兩個。俾任何跑批處理嘅功能單獨設上限。

整理重點

18 項清單同審計腳本

Mnilax 俾咗一份 20 分鐘可以全部跑完嘅清單,分 Claude.aiClaude CodeAPI/Console 三類,每項都有具體修法。

  • Claude.ai:記憶按項目作用域開、排除列表填上、擴展思考默認 Light、至少一個自定義樣式、每個活躍項目說明填上、過去聊天搜索打開、網頁搜索引用腳註、Cowork 信任文件夾清一遍、記住無痕模式快捷鍵。
  • Claude Code:enabledPlugins 只留真用嘅、permissions.deny 配上 + chmod 600 兜底、SessionStart 鈎子按分支加載、disableAllHooks 知道喺邊、項目級 model 覆蓋配置好、mcpServers 用 enabled 標誌、cleanupPeriodDays 改成 180。
  • API/Console:cache_control 斷點放喺穩定 system prompt 之後、TTL 1 小時、inference_geo 冇合規要求就關、工作區限額 + 按功能上限都設上。
每週審計腳本 claude-audit.sh bash
#!/usr/bin/env bash
SETTINGS="$HOME/.claude/settings.json"
echo "=== 啓用的插件數 ==="
jq '.enabledPlugins // {} | to_entries | map(select(.value==true)) | length' "$SETTINGS" 2>/dev/null
echo "目標:3-5 個常駐。"
echo "=== 啓用的 MCP 服務器數 ==="
jq '.mcpServers // {} | to_entries | map(select(.value.enabled==true)) | length' "$SETTINGS" 2>/dev/null
echo "目標:3 個常駐。"
echo "=== deny 規則數 ==="
jq '.permissions.deny // [] | length' "$SETTINGS" 2>/dev/null
echo "目標:至少 5 條。.env / sudo / rm -rf 必備。"
echo "=== SessionStart 鈎子數 ==="
jq '.hooks.SessionStart // [] | length' "$SETTINGS" 2>/dev/null
echo "=== cleanupPeriodDays ==="
jq '.cleanupPeriodDays // 30' "$SETTINGS" 2>/dev/null
echo "目標:180。"

chmod +x ~/bin/claude-audit.sh,每週跑一次直到每項達標。呢份清單唔係使用技巧,而係默認值審計報告。Anthropic 唔係有心隱藏,只係更新快、文檔追唔到。默認值係俾平均用戶,你有自己嘅工作流,用耐咗就拖你。

X 上面有個工程師叫 Mnilax,前兩日列咗 18 個 Claude 設置選項。

我本來想順手捽過去,掃到第三條就停咗落嚟。佢話佢將一個叫 cache_control 嘅斷點位置改咗少少,API 月度賬單由 340 美元降到 87 美元。冇換模型,冇改 prompt,冇縮減用量。

一個設置放錯咗位,食咗三個月冤枉錢。

呢兩年大家最鍾意講嘅一句話就係 Claude 變蠢咗。同一個 prompt,半年前可以做到乾淨俐落嘅方案,而家輸出又長又囉嗦,賬單仲要加。朋友入面有人月度由 200 美元爬到 800,模型冇換、用量冇翻倍。

跟住 Mnilax 呢份清單睇落嚟,多數唔係模型嘅問題,而係默認值喺度食錢。

Anthropic 產品更新得好快,文檔跟唔上。

Mnilax 俾嘅數字係咁嘅:Claude Code 二進制(v2.1.105)裏面可以揾到 125 個以上嘅設置鍵,官方文檔講咗大約 40 個。淨低 85 個點樣知道?翻 GitHub issue、睇工程師喺 Discord 偶然貼出嚟嘅截圖、凌晨一點拎住 binary 硬 grep 字符串。

Claude.ai 呢邊情況差唔多。佢統計出嚟有 14 個真正影響輸出質量嘅設置,匿埋喺設定 → 能力 → 記憶 → 項目作用域呢種三層選單後面。仲有 4 個連官方文檔都冇提過,用得但係 Anthropic 唔話你知。

默認值係俾平均用戶準備嘅,你唔係平均用戶。用幾個月之後,記憶開始漂移,插件越裝越多,緩存斷點放錯位,每一項都唔致命,但係累積起嚟就係 Claude 變蠢咗嘅真相。

下面按 Claude.ai、Claude Code、API 三層講一次,每條都俾一句話嘅改法。

Claude.ai 呢邊,5 個先鬱手

1. 記憶開項目作用域

路徑:設定 → 能力 → 記憶 → 項目作用域。

記憶呢個功能 2026 年 3 月先至向 Free 同 Pro 全面開放。默認係全域儲存,你喺某個項目裏面講嘅一句話,可能會喺另一個完全唔關事嘅聊天入面被拎返出嚟用。

Mnilax 舉嘅例子:你喺某個文件入面同 Claude 講過一句 Python 你鍾意用 tab 縮排,過兩星期寫完全唔關事嘅銷售文案,Claude 突然中間塞段 Python 範例,縮排仲特意用 tab。

將作用域改成按項目,項目裏面嘅記憶淨係留喺項目入面,可以解決 80% 嘅漂移問題。

另外兩件順手嘅事:將唔想被記住嘅話題加到排除列表(醫療、薪水、客戶名呢啲);喺任何聊天入面直接講 forget what you remembered about [話題],Claude 會即場比對自己嘅記憶庫然後話你知刪咗啲咩,唔使入選單。

我喺 Obsidian 裏面嗰個項目同 Claude 傾過嘅個人偏好,過幾日會彈到完全唔關事嘅程式碼任務入面。本來以為係巧合,而家睇係默認作用域嘅問題。

2. 擴展思考默認設定做 Light

路徑:聊天框 → 模型選擇下拉選單 → Extended Thinking。

擴展思考會喺回答前加一段 <thinking> 推理。對數學、調試、多步規劃好有用,對總結、翻譯、格式化、改寫就係浪費。

Mnilax 計過數:喺唔需要思考嘅任務上,擴展思考會多花 3 到 12 秒延遲,token 多用 20% 到 40%,答案質量冇分別。

默認開 Full 即係喺所有任務上都俾咗難題嘅錢。改成 Light,Claude 自己判斷需唔需要思考。佢推薦俾朋友試一個星期,Opus 嘅 token 消耗下降 18% 到 25%。

3. 將自定義樣式當輸出合同用

好多人以為自定義樣式係用嚟令 Claude 講嘢更加正式或者更加簡潔。

Mnilax 嘅角度更加接近真實用法——佢係一份注入到每次回答前嘅指令文件,相當於一份輸出合同。

你可以貼一份 200 到 1500 字嘅指令文件,每次回答前都會先應用呢份指令。佢自己成日用三份,分別俾 X 草稿、程式碼審查、PDF 總結用。

俾 X 草稿用嘅嗰份係咁樣:

開頭必須給一個具體數字或一個具體名字。不要"我最近在想……"。
句子儘量控制在 18 個字以內。
不要破折號,除非節奏需要。
禁用詞:delve、leverage、robust、unlock、game-changing。
列舉三項以上用減號列表,不用編號。
結尾必須是陳述句,不要反問。

三個樣式輪換,取代咗佢 80% 嘅常用 prompt 收藏。

我自己都係受害者。所有寫作偏好以前都塞入每次對話開頭,每次重貼一次。睇完呢條決定整理三個 Style:公眾號草稿、原始碼閲讀筆記、知識庫整理。

4. 項目說明填好,唔好留空

路徑:任意項目 → 右上角三點 → 編輯項目說明。

Mnilax 觀察身邊十幾個重度 Claude 用戶,70% 嘅項目說明係空嘅。

呢個字段相當於注入到項目入面每次對話嘅 system prompt。空住嘅話,你每次都要由頭開始解釋呢個項目係做咩。填好之後,Claude 自動帶住角色同默認立場進場。

佢俾嘅例子係一個 Polymarket 研究項目,說明入面就一句話:呢個係一個 Polymarket 研究工作流。默認懷疑論。永遠展示概率算式。永遠唔推薦下注,只係描述期望值。

400 字以內,每個月重讀一次修剪一下。

5. 網頁搜索引用轉成腳註模式

路徑:設定 → 能力 → 網頁搜索引用 → 腳註。

默認係內聯。內聯引用嘅問題:你複製 Claude 嘅答案去第度(飛書文檔、電郵、訊息),啲引用標記就變成無效嘅佔位符。

切換到腳註,答案乾淨,參考資料統一列曬喺最後。

淨低 3 個 Claude.ai 設定 Mnilax 簡單提過,我跟住列一列出嚟:

  • • 過去聊天搜索(Pro+):默認關。開咗之後要注意佢係關鍵詞匹配唔係語義匹配,要搜以前傾過嘅中國機器人嗰段,輸入框就要原樣寫出呢幾個字;寫成上星期傾過嗰件事呢啲模糊描述,搜唔出嚟。
  • • Cowork 信任文件夾:默認每次問,但你只要勾過一次之後唔再提示嘅嗰個選項,嗰個文件夾就入咗白名單。三月份測試時加嘅文件夾,Claude 一直喺後台讀你都唔記得咗。每兩個月去清理一次。
  • • 無痕模式:側欄㩒新建無痕聊天,或者快捷鍵 Cmd+Shift+N。佢跳過嘅唔係一件事而係四件事:記憶寫入、聊天記錄、過去聊天搜索索引、訓練數據採集。涉及薪水、醫療、客戶名嘅對話直接入無痕。

Claude Code 嗰邊,settings.json 入面嘅 7 個

Claude Code 嘅設定都喺 ~/.claude/settings.json(全域)或 .claude/settings.json(項目)入面,項目層級覆蓋全域。

6. enabledPlugins:停用就得,唔好卸載

插件市場令安裝變得太過簡單,卸載反而麻煩,結果就係大家裝咗一堆,冇幾個真係有用緊。

Mnilax 嘅提醒係:每個啟用插件會將佢嘅鈎子、SKILL.md 內容、工具 schema 全部加載入上下文預算。三個你早就唔記得存在嘅插件 = 未打一個字,已經預扣三到八千個 token。

佢自己開始審計時啟用咗 14 個,而家常駐 4 個。

修法:

{
  "enabledPlugins"
: {
    "formatter@acme-tools"
: true,
    "deployer@acme-tools"
: false,
    "old-experiment@personal"
: false
  }
}

設成 false 唔係卸載,係裝咗但唔加載。需要嘅時候 /plugin enable name@marketplace 暫時啟用。

呢條我睇完即刻去 audit 咗自己嘅配置,一堆 plugin 裝咗之後再冇掂過,全部都喺背後食 token。

7. permissions.deny 配上,但唔好全靠佢

permissions.deny 用嚟禁止 Claude 讀 .env、跑 rm -rf、調 sudo。聽落可靠。

但 GitHub issue #11544 記錄咗一個 bug:配置寫咗,除錯日誌顯示 0 matchers found,Claude 讀嘅照讀。間歇出現,重現條件唔明。

Mnilax 嘅建議係兩層防禦。第一層正常配 deny 規則:

{
  "permissions"
: {
    "deny"
: [
      "Read(.env)"
,
      "Read(.env.*)"
,
      "Read(**/*secret*)"
,
      "Bash(rm -rf:*)"
,
      "Bash(sudo:*)"

    ]
  }
}

第二層喺作業系統層兜底:chmod 600 .env。就算 Claude 想讀,作業系統都會拒絕。唔好全靠 deny 列表。

配完入 Claude Code 用 /permissions 驗證,規則冇出現就重啟會話。

8. SessionStart 鈎子按分支加載上下文

hooks.SessionStart 係 Claude Code 喺某個目錄打開時自動執行嘅鈎子。

Mnilax 指出大部分人冇用佢,或者用錯咗:將所有項目規則都塞入 CLAUDE.md,結果 CLAUDE.md 長到 5000 token,每個會話都要先吞咗呢一嚿再開始做嘢。

佢嘅做法係按分支加載上下文:

{
  "hooks"
: {
    "SessionStart"
: [{
      "matcher"
: "startup",
      "hooks"
: [{
        "type"
: "command",
        "command"
: "cat .claude/context-$(git branch --show-current).md 2>/dev/null || true"
      }]
    }]
  }
}

main 分支加載 context-main.mdfeat/auth 分支加載 context-feat-auth.md。每個文件保持細,上下文佔用降咗 30% 左右(佢實際測到嘅數字)。

我嘅 CLAUDE.md 而家都偏長,按分支拆係一個聰明嘅解法,返轉頭試試。

9. disableAllHooks:緊急開關

呢個開關 2026 年 3 月先出,知道嘅人唔多。

Claude Code 間中會發癲(無端端執行命令、會話啟動卡死、文件被神秘修改),Mnilax 話 80% 嘅情況係某個鈎子配置錯咗。

逐個停用排查好慢。disableAllHooks: true 一次過全部關曬,重啟,睇問題係咪冇咗。冇咗就一個一個開返嚟定位,仲有就係第度嘅 bug。

平時保持 false,記得呢個開關喺邊。

10. 按項目覆蓋 model

.claude/settings.json 喺項目根目錄入面設定 model,會覆蓋全域。

Mnilax 講咗一個好多人唔願意承認嘅事實:大部分人將全域模型設定做 Opus,因為想留返嚟做硬嘢,然後佢哋打開一個主要係編輯 Markdown 或者執行 shell 腳本嘅項目,呢類任務 Haiku 二十分之一嘅成本就可以做完,但佢哋就按 Opus 嘅價錢俾錢。

修法:

// /docs 項目
{ "model": "claude-haiku-4-5-20251001" }

// /infra 項目

{ "model": "claude-sonnet-4-6" }

// /core-engine 項目

{ "model": "claude-opus-4-7" }

打開項目,自動用啱嘅模型。

11. mcpServers 用 enabled 標誌,唔好刪

同 enabledPlugins 一個道理。MCP 伺服器連接到外部工具,每個會將完整嘅工具 schema 加載入上下文,一個伺服器 800 到 6000 token 不等。

Mnilax 俾嘅描述好真實:裝咗測試,從來唔斷開。三個月落嚟連咗 12 個,實際常用 3 個,淨低 9 個未用嘅伺服器喺每次會話啟動時白扣 2.5 萬到 4 萬 token 嘅 schema。

{
  "mcpServers"
: {
    "github"
:   { "command": "...", "enabled": true },
    "postgres"
: { "command": "...", "enabled": true },
    "slack"
:    { "command": "...", "enabled": false },
    "linear"
:   { "command": "...", "enabled": false }
  }
}

按會話需要打開。佢自己大部分日子開 2 到 3 個,做規劃嘅日子開到 6 個。

12. cleanupPeriodDays 改成 180

呢個設定控制 Claude Code 保留會話記錄、除錯日誌、中間會話數據嘅日數。默認 30 日。

Mnilax 提醒:Dreaming(記憶鞏固)同過去聊天搜索都依賴呢啲記錄。默認 30 日意味住 Dreaming 只能夠從一個月嘅工作入面學嘢。改成 180 日,訊號量翻 6 倍,磁碟代價大概 200MB。

{ "cleanupPeriodDays": 180 }

Claude Code 呢邊 7 個設定講完咗。Mnilax 喺 thread 尾將佢哋拼成一個完整模板:

{
  "model"
: "claude-sonnet-4-6",
  "enabledPlugins"
: {
    "formatter@acme-tools"
: true
  },
  "permissions"
: {
    "deny"
: [
      "Read(.env)"
,
      "Read(.env.*)"
,
      "Read(**/*secret*)"
,
      "Bash(rm -rf:*)"
,
      "Bash(sudo:*)"

    ]
  },
  "hooks"
: {
    "SessionStart"
: [{
      "matcher"
: "startup",
      "hooks"
: [{
        "type"
: "command",
        "command"
: "cat .claude/context-$(git branch --show-current).md 2>/dev/null || true"
      }]
    }]
  },
  "disableAllHooks"
: false,
  "mcpServers"
: {
    "github"
: { "command": "npx", "args": ["@modelcontextprotocol/server-github"], "enabled": true }
  },
  "cleanupPeriodDays"
: 180
}

複製進 ~/.claude/settings.json,路徑同插件名換成你嘅,重啟 Claude Code,執行一次 /permissions 和 /hooks 確認配置都加載咗。

API 呢邊,3 個鍵決定賬單

API 呢邊嘅設定直接影響賬單,Mnilax 話每個調整都可能令賬單浮動 30% 到 90%。

13. cache_control 斷點放啱位置

呢個就係開頭嗰個將賬單由 340 砍到 87 嘅設定。

cache_control 將 prompt 嘅某段前綴標記為可緩存。後續相同前綴嘅請求按輸入價格嘅 10% 收費,而唔係全價。

大家都知道佢存在,但大部分人放錯咗斷點位,結果只係慳咗一部分冇慳曬。

斷點要放喺靜態內容同動態內容嘅交界位。斷點之前嘅所有內容會被緩存,斷點之後嘅會重新計算。

錯嘅寫法:

messages = [
    {"role": "system", "content": SYSTEM_PROMPT},
    {"role": "user", "content": user_question,
     "cache_control"
: {"type": "ephemeral"}}
]

斷點放咗喺用戶訊息後面。用戶訊息每次都變,等於乜都冇緩存。

啱嘅寫法:

messages = [
    {"role": "system", "content": SYSTEM_PROMPT,
     "cache_control"
: {"type": "ephemeral"}},
    {"role": "user", "content": user_question}
]

斷點放喺穩定嘅 system prompt 之後,下次相同嘅 system prompt 直接命中緩存。

TTL 有兩級,5 分鐘(默認)同 1 小時。會話之間不變嘅 system prompt 用 1 小時:

{"cache_control": {"type": "ephemeral", "ttl": "1h"}}

經濟賬:寫緩存比基礎輸入貴 25%,讀緩存平 90%。盈虧平衡點係 TTL 窗口內讀 2 次或以上。

自己建立 Agent 服務嘅人受呢條衝擊最大。之前睇朋友 Agent 服務嘅賬單結構,主要成本就係重複發送同一份長 system prompt。斷點放啱,即刻係數量級嘅差距。

14. inference_geo:合規冇要求就唔好開

inference_geo 將推理路由到特定地理區域,僅美國駐留、僅歐盟駐留呢啲。

但僅美國駐留會令 Opus 4.7 以上嘅模型貴 10%。呢個加價唔喺標準價目表上面,只會出現喺賬單入面。

好多團隊默認開呢個參數係因為法務講過一句數據要留喺美國。但好多時候呢只係建議性嘅要求,並唔係合約寫死。

問清楚係合約要求定係建議性。建議性嘅話直接關咗佢,每次 Opus 調用即刻慳 10%。

15. 工作區級速率限制

路徑:控制枱 → 設定 → 工作區 → [你嘅工作區] → 按功能速率限制。

Mnilax 俾嘅場景:賬户級限制保護你唔會破產,工作區級限制保護你嘅線上產品唔畀自己嘅批處理任務拖垮。

你推出咗一個新功能,出咗 bug,循環咗,將賬户全部 ITPM 配額食曬,結果面向客戶嘅聊天開始回 429。

解法:每個使用界面(互動聊天、批處理、內部工具、實驗)拆一個工作區。每個工作區限額設定做賬户層級嘅 60% 到 70%,預留 30% 畀需要突發嘅工作區。

佢仲特別點出一個隱藏設定:每個工作區內部仲有一個按功能維度嘅上限,只在於你㩒入具體功能卡片時先睇到,工作區總覽頁唔顯示,默認無限。如果一個工作區入面有三個功能,其中一個會餓死另外兩個,工作區級限制捉唔到。畀任何執行批處理嘅功能單獨設定上限。

18 項清單同審計腳本

Mnilax 俾咗一份 20 分鐘可以全部做完嘅清單:

Claude.ai

  • • 記憶按項目作用域開,排除列表填好
  • • 擴展思考默認 Light
  • • 至少建立一個工作流自定義樣式
  • • 每個活躍項目嘅項目說明都填好
  • • 過去聊天搜索打開
  • • 網頁搜索引用換成腳註
  • • Cowork 信任文件夾清理一次
  • • 記住無痕模式快捷鍵

Claude Code

  • • enabledPlugins 淨係留真係用緊嘅
  • • permissions.deny 配上 + chmod 600 兜底
  • • SessionStart 鈎子按分支加載
  • • 知道 disableAllHooks 喺邊
  • • 項目級 model 覆蓋配置好
  • • mcpServers 用 enabled 標誌
  • • cleanupPeriodDays 改成 180

API / Console

  • • cache_control 斷點放喺穩定 system prompt 之後,1 小時 TTL
  • • inference_geo 冇合規要求就唔好開
  • • 工作區限額 + 按功能上限都設定好

佢仲順便俾咗一個每星期審計腳本,掉入 ~/bin/claude-audit.sh

#!/usr/bin/env bash
SETTINGS="$HOME/.claude/settings.json"

echo
 "=== 啓用的插件數 ==="
jq '.enabledPlugins // {} | to_entries | map(select(.value==true)) | length' "$SETTINGS" 2>/dev/null
echo
 "目標:3-5 個常駐。"

echo
 "=== 啓用的 MCP 服務器數 ==="
jq '.mcpServers // {} | to_entries | map(select(.value.enabled==true)) | length' "$SETTINGS" 2>/dev/null
echo
 "目標:3 個常駐。"

echo
 "=== deny 規則數 ==="
jq '.permissions.deny // [] | length' "$SETTINGS" 2>/dev/null
echo
 "目標:至少 5 條。.env / sudo / rm -rf 必備。"

echo
 "=== SessionStart 鈎子數 ==="
jq '.hooks.SessionStart // [] | length' "$SETTINGS" 2>/dev/null

echo
 "=== cleanupPeriodDays ==="
jq '.cleanupPeriodDays // 30' "$SETTINGS" 2>/dev/null
echo
 "目標:180。"

chmod +x ~/bin/claude-audit.sh,每星期執行一次直到每項達標。

寫喺最後

呢份清單唔係一份 Claude 使用技巧,而係一份默認值審計報告。

Anthropic 唔係有心收埋呢啲設定,佢哋更新得太快、文檔跟唔上。默認值係畀平均用戶準備嘅,你有自己嘅工作流程、項目模式、成本敏感度,默認值用耐咗就開始拖你。

我睇完呢份 thread 即刻做咗三件事:將全域 enabledPlugins 砍咗一半、將 cleanupPeriodDays 改成 180、畀兩個常用項目加咗項目級 model 覆蓋。總共使咗唔夠 10 分鐘,下個月嘅賬單同會話上下文我應該睇到分別。

建議你今晚抽 20 分鐘,對住呢份 18 項清單一項一項過一次。

Mnilax 原文喺 X 上面,作者係 @Mnilax。呢篇係讀後感 + 轉譯,加咗一啲自己嘅延伸點評,原文連結我放咗喺留言區,想睇原版嘅可以睇。

模型冇變。變嘅係你嘅配置有冇跟得上。


X 上有個工程師叫 Mnilax,前兩天列了 18 個 Claude 設置項。

我本來想隨手划過去,掃到第三條停下來了。他說他把一個叫 cache_control 的斷點位置改了一下,API 月度賬單從 340 美元降到 87 美元。沒換模型,沒改 prompt,沒縮用量。

一個設置放錯了位置,吃了三個月冤枉錢。

這兩年大家最愛說的一句話是 Claude 變笨了。同一個 prompt,半年前能跑出乾淨方案,現在輸出又長又囉嗦,賬單還漲。朋友裏有人月度從 200 美元爬到 800,模型沒換、量沒翻倍。

按 Mnilax 這份清單看下來,多半不是模型的事,是默認值在吃錢。

Anthropic 產品迭代快,文檔跟不上。

Mnilax 給的數字是這樣的:Claude Code 二進制(v2.1.105)裏能找到 125 個以上的設置鍵,官方文檔講了大約 40 個。剩下 85 個怎麼知道?翻 GitHub issue、看工程師在 Discord 偶然貼出來的截圖、凌晨一點拿 binary 硬 grep 字符串。

Claude.ai 這邊情況類似。他統計下來 14 個真正影響輸出質量的設置,藏在設置 → 能力 → 記憶 → 項目作用域這種三層菜單後面。還有 4 個連官方文檔都沒提,能用但 Anthropic 不告訴你。

默認值是給平均用戶準備的,你不是平均用戶。跑幾個月之後,記憶開始漂移,插件越裝越多,緩存斷點放錯位置,每一項都不致命,累加起來就是 Claude 變笨了的真相。

下面按 Claude.ai、Claude Code、API 三層鋪一遍,每條都給一行話的修法。

Claude.ai 這邊,5 個先動起來

1. 記憶開項目作用域

路徑:設置 → 能力 → 記憶 → 項目作用域。

記憶這個功能 2026 年 3 月才向 Free 和 Pro 全量開放。默認是全局存,你在某個項目裏說的一句話,可能會在另一個完全不相關的聊天裏被翻出來用。

Mnilax 舉的例子:你在某個文件裏跟 Claude 說過一句 Python 你喜歡用 tab 縮進,過兩週寫完全無關的銷售文案,Claude 突然在中間塞段 Python 示例,縮進還特意用 tab。

把作用域改成按項目,項目內的記憶只留在項目裏,能解決 80% 的漂移問題。

另外兩件順手的事:把不想被記的話題加到排除列表(醫療、薪資、客戶名這種);在任何聊天裏直接說 forget what you remembered about [話題],Claude 會現場比對自己的記憶庫然後告訴你刪了什麼,不用進菜單。

我在 Obsidian 裏那個項目跟 Claude 聊過的個人偏好,過幾天會冒到完全不相干的代碼任務裏。原來以為是巧合,現在看是默認作用域的問題。

2. 擴展思考默認設成 Light

路徑:聊天框 → 模型選擇下拉 → Extended Thinking。

擴展思考會在回答前加一段 <thinking> 推理。對數學、調試、多步規劃很有用,對總結、翻譯、格式化、改寫就是浪費。

Mnilax 算過賬:在不需要思考的任務上,擴展思考多花 3 到 12 秒延遲,token 多用 20% 到 40%,答案質量沒差別。

默認開 Full 等於在所有任務上都付了難題的錢。改成 Light,Claude 自己判斷要不要思考。他推薦給朋友試一週,Opus 的 token 消耗下降 18% 到 25%。

3. 把自定義樣式當輸出合同用

很多人以為自定義樣式是用來讓 Claude 說話更正式或更簡潔。

Mnilax 的角度更接近真實用法——它是一份注入到每次回答前的指令文件,相當於一份輸出合同。

你可以貼一份 200 到 1500 字的指令文件,每次回答前都會先應用這份指令。他自己常用三份,分別給 X 草稿、代碼審查、PDF 總結用。

給 X 草稿用的那份長這樣:

開頭必須給一個具體數字或一個具體名字。不要"我最近在想……"。
句子儘量控制在 18 個字以內。
不要破折號,除非節奏需要。
禁用詞:delve、leverage、robust、unlock、game-changing。
列舉三項以上用減號列表,不用編號。
結尾必須是陳述句,不要反問。

三個樣式輪換,替掉了他 80% 的常用 prompt 收藏。

我自己也是受害者。所有寫作偏好以前都塞進每次對話開頭,每次重粘一遍。看完這條決定整理三個 Style:公眾號草稿、源碼閲讀筆記、知識庫整理。

4. 項目說明填上,別留空

路徑:任意項目 → 右上角三個點 → 編輯項目說明。

Mnilax 觀察身邊十幾個重度 Claude 用戶,70% 的項目說明是空的。

這個字段相當於注入到項目裏每次對話的 system prompt。空着的話,你每次都要從零開始解釋這個項目是幹嘛的。填上之後,Claude 自動帶着角色和默認立場進場。

他給的例子是一個 Polymarket 研究項目,說明裏就一句話:這是一個 Polymarket 研究工作流。默認懷疑論。永遠展示概率算式。永遠不推薦下注,只描述期望值。

400 字以內,每月重讀一次裁一裁。

5. 網頁搜索引用換成腳註模式

路徑:設置 → 能力 → 網頁搜索引用 → 腳註。

默認是內聯。內聯引用的問題:你複製 Claude 的答案到別處(飛書文檔、郵件、消息),那些引用標記就變成無效佔位符。

切換到腳註,答案乾淨,參考資料統一列在最後。

剩下的 3 個 Claude.ai 設置 Mnilax 簡略提了,我跟着列一下:

  • • 過去聊天搜索(Pro+):默認關。開了之後注意它是關鍵詞匹配不是語義匹配,要搜以前聊過的中國機器人那一段,輸入框就得原樣寫出這幾個字;寫成上週聊的那個事這種模糊描述,搜不出來。
  • • Cowork 信任文件夾:默認每次問,但你只要勾過一次以後不再提示的那個選項,那個文件夾就進了白名單。三月份測試時加的文件夾,Claude 一直在後台讀你都忘了。每兩個月去清一次。
  • • 無痕模式:側欄點新建無痕聊天,或者快捷鍵 Cmd+Shift+N。它跳過的不是一件事是四件:記憶寫入、聊天記錄、過去聊天搜索索引、訓練數據採集。涉及薪資、醫療、客戶名的對話直接進無痕。

Claude Code 那邊,settings.json 裏的 7 個

Claude Code 的設置都在 ~/.claude/settings.json(全局)或 .claude/settings.json(項目)裏,項目級覆蓋全局。

6. enabledPlugins:禁用就好,別卸載

插件市場讓安裝變得太簡單,卸載反而麻煩,結果就是大家裝了一堆,沒幾個真在用。

Mnilax 的提醒是:每個激活插件會把它的鈎子、SKILL.md 內容、工具 schema 全部加載進上下文預算。三個你早就忘了存在的插件 = 還沒敲一個字,已經預扣三到八千個 token。

他自己開始審計時啓用了 14 個,現在常駐 4 個。

修法:

{
  "enabledPlugins"
: {
    "formatter@acme-tools"
: true,
    "deployer@acme-tools"
: false,
    "old-experiment@personal"
: false
  }
}

設成 false 不是卸載,是裝着但不加載。需要的時候 /plugin enable name@marketplace 臨時啓用。

這條我看完立刻去 audit 了自己配置,一堆 plugin 裝了之後再沒碰過,全在背後吃 token。

7. permissions.deny 配上,但別全靠它

permissions.deny 用來禁止 Claude 讀 .env、跑 rm -rf、調 sudo。聽起來可靠。

但 GitHub issue #11544 記錄了一個 bug:配置寫了,調試日誌顯示 0 matchers found,Claude 該讀還是讀。偶發,復現條件不明。

Mnilax 的建議是兩層防禦。第一層正常配 deny 規則:

{
  "permissions"
: {
    "deny"
: [
      "Read(.env)"
,
      "Read(.env.*)"
,
      "Read(**/*secret*)"
,
      "Bash(rm -rf:*)"
,
      "Bash(sudo:*)"

    ]
  }
}

第二層在操作系統層兜底:chmod 600 .env。即使 Claude 想讀,操作系統也會拒絕。別全靠 deny 列表。

配完進 Claude Code 用 /permissions 驗證,規則沒出現就重啓會話。

8. SessionStart 鈎子按分支加載上下文

hooks.SessionStart 是 Claude Code 在某個目錄打開時自動執行的鈎子。

Mnilax 指出大部分人沒用它,或者用錯了:把所有項目規則都塞進 CLAUDE.md,結果 CLAUDE.md 長到 5000 token,每個會話都要先吞掉這一坨再開始幹活。

他的做法是按分支加載上下文:

{
  "hooks"
: {
    "SessionStart"
: [{
      "matcher"
: "startup",
      "hooks"
: [{
        "type"
: "command",
        "command"
: "cat .claude/context-$(git branch --show-current).md 2>/dev/null || true"
      }]
    }]
  }
}

main 分支加載 context-main.mdfeat/auth 分支加載 context-feat-auth.md。每個文件保持小,上下文佔用降了 30% 左右(他實測的數字)。

我的 CLAUDE.md 現在也偏長,按分支拆是個聰明的解,回頭試試。

9. disableAllHooks:緊急開關

這個開關 2026 年 3 月才出,知道的人不多。

Claude Code 偶爾會抽風(莫名其妙跑命令、會話啓動卡死、文件被神秘修改),Mnilax 說 80% 的情況是某個鈎子配錯了。

逐個禁用排查很慢。disableAllHooks: true 一次性全關,重啓,看問題是不是沒了。沒了再一個個開回來定位,還在那就是別處的 bug。

平時保持 false,記得這個開關在哪。

10. 按項目覆蓋 model

.claude/settings.json 在項目根目錄裏設 model,會覆蓋全局。

Mnilax 說了一個很多人不願承認的事實:大部分人把全局模型設成 Opus,因為想留着乾硬活,然後他們打開一個主要在編輯 Markdown 或跑 shell 腳本的項目,這種任務 Haiku 二十分之一的成本就能幹完,他們卻按 Opus 的價錢付錢。

修法:

// /docs 項目
{ "model": "claude-haiku-4-5-20251001" }

// /infra 項目

{ "model": "claude-sonnet-4-6" }

// /core-engine 項目

{ "model": "claude-opus-4-7" }

打開項目,自動用對的模型。

11. mcpServers 用 enabled 標誌,別刪

跟 enabledPlugins 一個道理。MCP 服務器連接到外部工具,每個會把完整的工具 schema 加載進上下文,一個服務器 800 到 6000 token 不等。

Mnilax 給的畫像很真實:裝了測試,從來不斷開。三個月下來連了 12 個,實際常用 3 個,剩下 9 個未用的服務器在每次會話啓動時白扣 2.5 萬到 4 萬 token 的 schema。

{
  "mcpServers"
: {
    "github"
:   { "command": "...", "enabled": true },
    "postgres"
: { "command": "...", "enabled": true },
    "slack"
:    { "command": "...", "enabled": false },
    "linear"
:   { "command": "...", "enabled": false }
  }
}

按會話需要打開。他自己大部分日子開 2 到 3 個,做規劃的日子開到 6 個。

12. cleanupPeriodDays 改成 180

這個設置控制 Claude Code 保留會話記錄、調試日誌、中間會話數據的天數。默認 30 天。

Mnilax 提醒:Dreaming(記憶鞏固)和過去聊天搜索都依賴這些記錄。默認 30 天意味着 Dreaming 只能從一個月的工作裏學東西。改成 180 天,信號量翻 6 倍,磁盤代價大概 200MB。

{ "cleanupPeriodDays": 180 }

Claude Code 這邊 7 個設置講完了。Mnilax 在 thread 末尾把它們拼成一個完整模板:

{
  "model"
: "claude-sonnet-4-6",
  "enabledPlugins"
: {
    "formatter@acme-tools"
: true
  },
  "permissions"
: {
    "deny"
: [
      "Read(.env)"
,
      "Read(.env.*)"
,
      "Read(**/*secret*)"
,
      "Bash(rm -rf:*)"
,
      "Bash(sudo:*)"

    ]
  },
  "hooks"
: {
    "SessionStart"
: [{
      "matcher"
: "startup",
      "hooks"
: [{
        "type"
: "command",
        "command"
: "cat .claude/context-$(git branch --show-current).md 2>/dev/null || true"
      }]
    }]
  },
  "disableAllHooks"
: false,
  "mcpServers"
: {
    "github"
: { "command": "npx", "args": ["@modelcontextprotocol/server-github"], "enabled": true }
  },
  "cleanupPeriodDays"
: 180
}

複製進 ~/.claude/settings.json,路徑和插件名換成你的,重啓 Claude Code,跑一次 /permissions 和 /hooks 確認配置都加載了。

API 這邊,3 個鍵決定賬單

API 這邊的設置直接動賬單,Mnilax 說每個調整都可能讓賬單浮動 30% 到 90%。

13. cache_control 斷點放對位置

這就是開頭那個把賬單從 340 砍到 87 的設置。

cache_control 把 prompt 的某段前綴標記為可緩存。後續相同前綴的請求按輸入價格的 10% 收費,而不是全價。

大家都知道它存在,但大部分人放錯了斷點位置,結果只省了一部分沒省全部。

斷點要放在靜態內容和動態內容的交界處。斷點之前的所有內容會被緩存,斷點之後的會重算。

錯的寫法:

messages = [
    {"role": "system", "content": SYSTEM_PROMPT},
    {"role": "user", "content": user_question,
     "cache_control"
: {"type": "ephemeral"}}
]

斷點放在了用戶消息後面。用戶消息每次都變,等於什麼都沒緩存。

對的寫法:

messages = [
    {"role": "system", "content": SYSTEM_PROMPT,
     "cache_control"
: {"type": "ephemeral"}},
    {"role": "user", "content": user_question}
]

斷點放在穩定的 system prompt 之後,下次相同的 system prompt 直接命中緩存。

TTL 有兩檔,5 分鐘(默認)和 1 小時。會話間不變的 system prompt 用 1 小時:

{"cache_control": {"type": "ephemeral", "ttl": "1h"}}

經濟賬:寫緩存比基礎輸入貴 25%,讀緩存便宜 90%。盈虧平衡點是 TTL 窗口內讀 2 次以上。

自建 Agent 服務的人受這條衝擊最大。之前看朋友 Agent 服務的賬單結構,主要成本就是重複發送同一份長 system prompt。斷點放對,立刻是數量級的差距。

14. inference_geo:合規沒要求就別開

inference_geo 把推理路由到特定地理區域,僅美國駐留、僅歐盟駐留這種。

但僅美國駐留會讓 Opus 4.7 以上的模型貴 10%。這個加價不在標準價目表上,只會出現在賬單裏。

很多團隊默認開這個參數是因為法務說過一句數據要留在美國。但很多時候這只是建議性的要求,並不是合同寫死。

問清楚是合同要求還是建議性的。建議性的話直接關掉,每次 Opus 調用立刻省 10%。

15. 工作區級速率限制

路徑:控制枱 → 設置 → 工作區 → [你的工作區] → 按功能速率限制。

Mnilax 給的場景:賬户級限制保護你不會破產,工作區級限制保護你的線上產品不被自己的批處理任務拖垮。

你發了一個新功能,bug 了,循環了,把賬户全部 ITPM 配額吃光,結果面向客戶的聊天開始返 429。

修法:每個使用面(交互聊天、批處理、內部工具、實驗)拆一個工作區。每個工作區限額設成賬户層級的 60% 到 70%,預留 30% 給需要突發的工作區。

他還專門點出一個隱藏設置:每個工作區內部還有一個按功能維度的上限,只在你點進具體功能卡片時才能看到,工作區總覽頁不顯示,默認無限。如果一個工作區裏有三個功能,其中一個會餓死另外兩個,工作區級限制抓不到。給任何跑批處理的功能單獨設上限。

18 項清單和審計腳本

Mnilax 給了一份 20 分鐘可以全部跑完的清單:

Claude.ai

  • • 記憶按項目作用域開,排除列表填上
  • • 擴展思考默認 Light
  • • 至少建一個工作流自定義樣式
  • • 每個活躍項目的項目說明都填上
  • • 過去聊天搜索打開
  • • 網頁搜索引用換成腳註
  • • Cowork 信任文件夾清一遍
  • • 無痕模式快捷鍵記住

Claude Code

  • • enabledPlugins 只留真用的
  • • permissions.deny 配上 + chmod 600 兜底
  • • SessionStart 鈎子按分支加載
  • • disableAllHooks 知道在哪
  • • 項目級 model 覆蓋配置好
  • • mcpServers 用 enabled 標誌
  • • cleanupPeriodDays 改成 180

API / Console

  • • cache_control 斷點放在穩定 system prompt 之後,1 小時 TTL
  • • inference_geo 沒合規要求就別開
  • • 工作區限額 + 按功能上限都設上

他還順手給了一個每週審計腳本,扔進 ~/bin/claude-audit.sh

#!/usr/bin/env bash
SETTINGS="$HOME/.claude/settings.json"

echo
 "=== 啓用的插件數 ==="
jq '.enabledPlugins // {} | to_entries | map(select(.value==true)) | length' "$SETTINGS" 2>/dev/null
echo
 "目標:3-5 個常駐。"

echo
 "=== 啓用的 MCP 服務器數 ==="
jq '.mcpServers // {} | to_entries | map(select(.value.enabled==true)) | length' "$SETTINGS" 2>/dev/null
echo
 "目標:3 個常駐。"

echo
 "=== deny 規則數 ==="
jq '.permissions.deny // [] | length' "$SETTINGS" 2>/dev/null
echo
 "目標:至少 5 條。.env / sudo / rm -rf 必備。"

echo
 "=== SessionStart 鈎子數 ==="
jq '.hooks.SessionStart // [] | length' "$SETTINGS" 2>/dev/null

echo
 "=== cleanupPeriodDays ==="
jq '.cleanupPeriodDays // 30' "$SETTINGS" 2>/dev/null
echo
 "目標:180。"

chmod +x ~/bin/claude-audit.sh,每週跑一次直到每項達標。

寫在最後

這份清單不是一份 Claude 使用技巧,而是一份默認值審計報告。

Anthropic 不是有意藏這些設置,他們更新太快、文檔跟不上。默認值是給平均用戶準備的,你有自己的工作流、項目模式、成本敏感度,默認值跑久了就開始拖你。

我看完這份 thread 立刻做了三件事:把全局 enabledPlugins 砍了一半、把 cleanupPeriodDays 改成 180、給兩個常用項目加了項目級 model 覆蓋。總共花了不到 10 分鐘,下個月的賬單和會話上下文我應該能看出差別。

建議你今晚抽 20 分鐘,對着這份 18 項清單一項項過一遍。

Mnilax 原文在 X 上,作者是 @Mnilax。這篇是讀後感 + 轉譯,加了一些自己的延伸點評,原文連結我放在評論區,想看原版的可以去看。

模型沒變。變的是你的配置有沒有跟上。