Claude Code 踩雷:commit 訊息打「HERMES.md」5 秒被扣 6,000 台幣

Claude Code 踩雷:commit 訊息打「HERMES.md」5 秒被扣 6,000 台幣

Claude Code 踩雷:commit 訊息打「HERMES.md」5 秒被扣 6,000 台幣

只是打五個字,200 美金瞬間蒸發

上週末,工程師 sasha-id 在 GitHub 上貼出一張帳單截圖:他明明還有 87% 額度沒用完,Claude Code 卻跳出「餘額不足」紅字,200.98 美金(約 6,400 台幣)的預付點數直接歸零。原因離譜到讓人傻眼——commit 訊息裡只要出現「HERMES.md」這五個字,就會觸發額外扣款

事件經過時間軸

  • 4/24 22:00 sasha-id 如常 push code,commit 寫了「update HERMES.md」
  • 4/25 00:13 Claude Code 回報「insufficient quota」
  • 4/25 09:45 他發現 200 美金點數被吃掉,開工單給 Anthropic
  • 4/26 14:20 Anthropic 官方 AI 回:「技術錯誤不予補償」
  • 4/27 21:00 工程師 Thariq 在 X 承諾「會退錢+再送 200 點」
  • 4/30 13:00 款項終於退回,中間整整 3 000 分鐘用戶只能乾等

為什麼會這樣?Anthropic 給的解釋

根據開發者 Thariq 的說法,他們為了防止第三方濫用,會掃描 git status 並把「可疑關鍵字」寫進系統提示。結果「HERMES.md」被誤判成「外部外掛檔案」,導致所有請求繞過原本額度,直接走「超額付費」通道。簡單講,就像你刷悠遊卡進捷運,閘門卻突然把你導到「單程票」通道,還多刷你一筆錢。

哪些字會踩雷?實測結果

sasha-id 把 200 多個 commit 全部拆開測一次,結論如下:

字樣是否扣款
HERMES.md✅ 秒扣
hermes.md❌ 正常
HERMES.txt❌ 正常
hermes.MD❌ 正常
檔案名剛好叫 HERMES.md❌ 正常

只有「大小寫完全吻合」才會中獎,機率極低,但中了就是 6,000 台幣起跳。

如果你正在用 Claude Code,3 步驟自保

  1. 先鎖額度
    控制台→Billing→Set hard limit,把「自動加值」關掉,額度上限設 50 台幣,真的不夠再手動加。

  2. 過濾 commit
    .git/hooks/commit-msg 加兩行:

    grep -qi 'HERMES.md' "$1" && echo '⚠️  關鍵字阻擋,請換字再 commit' && exit 1

    存檔後 chmod +x .git/hooks/commit-msg 就能擋住自己手滑。

  3. 開雙重提醒
    把 Claude Code 綁定的信用卡「刷卡通知」打開,只要有一筆 1 美元以上交易,LINE 與簡訊立刻跳出,第一時間止損。

不是單一案例,Hacker News 上還有 40+ 人回報

事件被貼到 Hacker News 後,短短 8 小時衝上 500 點,留言區還有人加碼:「我用『ODYSSEUS.json』也中招」「打『GPT-4』同樣被多收 20 美元」。看來「關鍵字誤殺」不是偶發,只是大多數用戶沒即時發現。

給台灣開發者的三個啟示

  1. AI 工具還是「國外」服務
    客服回應、退費流程、爭議舉證全部英文進行,真出事只能半夜爬文,不要把公司核心流程綁在單一 AI

  2. 信用卡別綁「主要卡片」
    去銀行申一張「電子支付專用」信用卡,額度 5,000 台幣就好,外洩或暴刷都不心疼。

  3. commit 訊息保持「無害」
    台灣工程師最愛打「fix bug」「update readme」其實最安全;想放文件名,先用 git log --oneline | grep -i 關鍵字 掃一次,確定沒撞字再推。

結語:AI 幫你寫 code,也幫你燒錢

這次「HERMES.md」事件給大家的教訓很簡單:AI 服務的 Bug 不會只停在「回答爛」,還會直接刷你的卡。把額度鎖好、關鍵字過濾好、通知通知再打開,才能安心讓 Claude 幫你寫程式,而不是寫出一張嚇死人的帳單。

現在就打開 Claude Code 控制台,把 hard limit 設下去,別再當下一個「6,000 台幣 commit」的主角!