頭條 · 實戰應用
畫面上出現的錯誤訊息,只能告訴你 Claude 收到了需要注意的訊號,不能告訴你風險已經被排除。
Adrian Koch
·
2026年09月28日
你在 PostToolUse 事件寫了一個 hook,讓它在偵測到不該修改的檔案時回傳 exit 2。終端機上跳出一行紅字:「blocking error」。你鬆了一口氣,以為這次的修改已經被擋下來——結果打開檔案一看,內容還是被改了。這不是你的設定寫錯,而是 PostToolUse 這個事件類型的機制,從一開始就不具備「阻擋」的能力。這個落差在社群裡已經被回報成一個明確的 GitHub issue(#19009):使用者的 PostToolUse hook 對某次 Edit 操作回傳 exit 2,介面上確實顯示了「blocking error」的字樣,但那次編輯早已經寫入磁碟。回報者的建議很直接——與其讓使用者誤以為出了問題就代表動作被擋下,不如把這段文字改成「hook warning」或「hook reported error」,更準確反映實際發生的事。問題不在 exit...