你一定遇過這個場景
Claude 寫到一半說:
「基礎框架已搭好,
你可以在這個基礎上繼續完善」
翻譯:活沒幹完,我先下班了。
你只好自己善後。
Ralph Loop 是什麼?
一個攔截 Claude 退出動作的 Hook。
它要離開時,Hook 會先問:
「你說的完成條件達到了嗎?」
沒達到?塞回去繼續寫。
有達到?才能真的結束。
實際跑起來長這樣
設定完成條件後啟動 Loop,
Claude 每次想收工,
Hook 就比對條件是否達成。
沒達成 → 自動繼續執行。
達成 → 正常結束。
/ralph-wiggum:ralph-loop
完成條件:
登入 API 可用 +
單元測試覆蓋率 80% +
README 含 API 文件
完成條件要寫具體
「做完使用者模組」等於沒說。
Claude 隨時可以說服自己完成了。
要寫成可驗證的指標,
它才沒辦法混水摸魚。
❌ 做完使用者模組
✅ 登入註冊 API 可用
✅ 單元測試覆蓋率 80%+
✅ README 包含 API 文件
一個 CRUD 模組的實測
設條件後讓 Claude 自己跑:
「所有 API 測試通過
+ README 寫完才算結束」
Claude 中間想收工三次,
都被塞回去了,最後做完了。
第二個使用場景
寫 code 的時候讓它常駐。
你去做別的事,
回來就有完整實作。
不是半成品,不需要你收尾。
這才叫真正的自動化。
Hook 的核心邏輯
Ralph Loop 用的是 Stop Hook,
攔截的是 Claude 準備結束的時機。
Hook 拿完成條件去比對當前狀態,
不符合就回傳繼續的指令。
符合才讓它真的停。
# Stop Hook 原理
觸發時機:Claude 準備結束時
檢查:完成條件 vs 當前狀態
不符合 → exit code 1(繼續)
符合 → exit code 0(結束)
你遇過 Claude 想提早下班嗎?
留言告訴我 👇
A:遇過,而且不只一次
B:還好,但想預防
C:沒遇過(你是怎麼做到的)