跳到主要內容
Cypher's Practical Coding
正在準備工作環境...

Hook 是什麼?

生活中到處都是觸發器

Hook 就是觸發器。

想一下你的日常:鬧鐘到點就響、到公司手機自動切換工作模式、識別到你出門就把燈關掉。這些都是「在某個時刻,自動發生某件事」的邏輯。

Agent 裡的 Hook 也是一樣的概念。

你設定好規則,然後在特定時刻,它自動幫你做事:

  • AI 修改檔案之前,先自動檢查有沒有潛在風險
  • 程式碼改完,自動跑 lint 確認格式
  • 長任務跑完,發推送通知提醒你回來看結果

Hook 不是 AI,不耗 token

這一點很重要:大多數 Hook 本質上是寫死的腳本,跟 AI 模型幾乎沒有關係。

它不需要送 prompt 給模型、不需要等待推理、不消耗 token。觸發條件成立,腳本執行,就這樣。

這讓 Hook 特別適合做那些「需要穩定、快速、無成本」的自動化動作。

在 Claude Code 裡看可用的 Hook

打開 Claude Code,輸入 /hooks 就能看到所有可用的 Hook 事件清單。

不用全部搞懂——常用的幾個就夠了。你會在後面幾課逐一認識它們。

Hook、Prompt、Skill 的定位差異

三個工具解決三種不同的問題:

工具解決什麼
Prompt解決一次對話
Skill解決一類能力
Hook解決一個時刻

Hook 不是萬能的,但它在對的時刻比什麼都好用。


AI 協作:學了這個,跟 AI 怎麼配合?

你的人類優勢

  • 你知道自己的工作流程裡哪個環節最容易出錯或最容易被打斷
  • 你能判斷哪些動作「每次都要做、但每次都懶得做」,這才是 Hook 的最佳候選
  • 你能決定哪些事情要自動化、哪些事情應該保留人工判斷

可以這樣跟 AI 說

我每次跑完測試都要手動確認一下 log 有沒有 error,
可以幫我設一個 Hook,讓測試跑完自動掃 log,
如果有 error 就用終端機輸出提醒我嗎?

挑戰任務

Task 1

想一個你平常在開發時,會重複做的小動作(例如每次存檔後都手動跑格式化、每次開專案都要手動確認環境變數)。這個動作適合用 Hook 自動化嗎?為什麼?

Next Lesson →