iT邦幫忙

2025 iThome 鐵人賽

DAY 17
0
生成式 AI

我與 AI Pair Programming系列 第 17

我與 Claude Code pair:第四個工具 —— Hooks

  • 分享至 

  • xImage
  •  

今天要來介紹 Claude Code 系列的第四個工具:Hooks。Hooks 除了可以幫助我們和 Claude Code pair 的更順暢之外,也能開發出一些好玩的功能。就讓我們開始今天的分享吧!

What is Hooks

根據 Claude Code 官網的文件

Claude Code hooks 是使用者定義的 shell 命令,在 Claude Code 生命週期的各個時間點執行。Hooks 提供對 Claude Code 行為的確定性控制,確保某些動作總是會發生,而不是依賴 LLM 選擇執行它們。

想像一下你出門的時候,是不是要自己手動關燈、關窗,檢查好都關完之後才會放心走出家門,結果電梯剛來就想起來廁所排風扇還沒關?
Claude Code Hooks 就像是智能家居一樣,可以偵測到你離開大門後自動幫你斷電,或是在你一開門的時候幫你開燈、開廁所暖氣。他可以在你和 Claude Code 互動的某些時間點,自動化的去做一些事情。

有哪些時間點?

打開 Claude Code 的介面後輸入 /hooks 就可以看到以下的畫面:
https://ithelp.ithome.com.tw/upload/images/20251001/20151635RXqetfluDG.png

縱共有 9 種 hook event:

  1. PreToolUse - Before tool execution
  2. PostToolUse - After tool execution
  3. Notification - When notifications are sent
  4. UserPromptSubmit - When the user submits a prompt
  5. SessionStart - When a new session is started
  6. Stop - Right before Claude concludes its response
  7. SubagentStop - Right before a subagent (Task tool call) concludes its response
  8. PreCompact - Before conversation compaction
  9. SessionEnd - When a session is ending

我自己最常用的是 Notification 和 Stop。用方向鍵上下移動到你想要建立的時間點後按下 enter 就會出現這個畫面:
https://ithelp.ithome.com.tw/upload/images/20251001/20151635OdWc9qnU5h.png

第一個選項是新增,如果之前有設定過的話就會出現在下方。選擇第一個選項後就會出現可以新增的畫面:
https://ithelp.ithome.com.tw/upload/images/20251001/20151635Baaprc8ICH.png

假設這是一個前端專案,你希望他在每次 Claude Code 回應完後都跑一下 TSC,這時候就可以在對話匡中輸入 npm run tsc 並按下送出後,他會詢問你要建立在哪個層級:
https://ithelp.ithome.com.tw/upload/images/20251001/20151635O1lZKfPkgM.png

選擇你喜歡的層級按下 enter 後就大功告成囉!一路按下 ESC 回到原本的對話串時,隨便輸入點什麼就會看到他執行 npm 的紀錄。不過因為我示範的專案並不需要用 npm 來管理,所以可以看到他跑失敗的紀錄:
https://ithelp.ithome.com.tw/upload/images/20251001/20151635Uj1qtG61aG.png

可以用來做什麼?

在工作上最好用的就是在 Claude Code 寫完程式碼之後跑一下測試,前端專案可以多跑 TSC 檢查型別有沒有錯誤,後端專案則是可以 Build 一下看看是不是專案都正常。
但是 Hooks 可以做的不只在工作上,下一篇文章我會教大家怎麼搭配 Mac 好用的 Raycast 套件來摩擦出新的火花喔!

你還有什麼想聽我分享的 Hooks 使用經驗呢?歡迎留言給我喔!
我們明天見 👋


上一篇
我與 Claude Code pair:在 Rider 裡使用 Claude Code
下一篇
我與 Claude Code pair:玩出不一樣的 Hooks
系列文
我與 AI Pair Programming21
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言