Skip to content

7.16 /hooks - 管理鉤子配置

概述

/hooks 命令用於管理工具事件的鉤子配置。鉤子允許你在特定事件發生時自動執行自定義指令碼或命令。

基本语法

bash


/hooks [subcommand]

子命令

子命令描述

無引數| 列出所有已配置的鉤子 add| 新增新的鉤子 edit| 編輯現有鉤子 remove| 刪除鉤子 enable| 啟用鉤子 disable| 禁用鉤子

## 功能说明

### 列出钩子

    bash


    /hooks

    # 显示所有已配置的钩子及其状态

### 添加钩子

    bash


    /hooks add

    # 按照提示输入:
    # - 钩子名称
    # - 触发事件
    # - 执行命令
    # - 工作目录

### 删除钩子

    bash


    /hooks remove <hook-name>

    # 删除指定的钩子

## 钩子事件

Claude Code 支援以下鉤子事件:

事件描述

before-edit| 檔案編輯前 after-edit| 檔案編輯後 before-run| 命令執行前 after-run| 命令執行後 on-error| 錯誤發生時 on-success| 任務成功時

## 使用场景

### 1\. 代码格式化

    bash


    # 添加文件编辑后的格式化钩子
    /hooks add

    # 配置:
    # - 事件: after-edit
    # - 命令: prettier --write $FILE
    # - 作用: 每次编辑文件后自动格式化

### 2\. 运行测试

    bash


    # 添加代码编辑后的测试钩子
    /hooks add

    # 配置:
    # - 事件: after-edit
    # - 命令: npm test
    # - 作用: 每次编辑代码后运行测试

### 3\. 备份文件

    bash


    # 添加文件编辑前的备份钩子
    /hooks add

    # 配置:
    # - 事件: before-edit
    # - 命令: cp $FILE $FILE.backup
    # - 作用: 编辑前自动备份文件

### 4\. 通知

    bash


    # 添加任务完成后的通知钩子
    /hooks add

    # 配置:
    # - 事件: on-success
    # - 命令: notify-send "Task completed"
    # - 作用: 任务完成后发送通知

## 钩子配置示例

### 格式化钩子

    yaml


    name: format-code
    event: after-edit
    command: prettier --write $FILE
    enabled: true

### 测试钩子

    yaml


    name: run-tests
    event: after-edit
    command: npm test
    working-dir: ./tests
    enabled: true

### 备份钩子

    yaml


    name: backup-file
    event: before-edit
    command: cp $FILE $FILE.backup
    enabled: true

## 环境变量


鉤子命令可以使用以下環境變數:

變數| 描述
---|---

`$FILE`| 被編輯的檔案路徑
`$COMMAND`| 執行的命令
`$STATUS`| 命令退出狀態
`$WORKING_DIR`| 工作目錄

## 注意事項

  1. 鉤子命令在工作目錄中執行
  2. 鉤子執行失敗不會阻止主流程
  3. 可以禁用鉤子而不刪除
  4. 鉤子配置儲存在專案或使用者級別

## 与其他命令的配合使用

    bash


    # 配置钩子,然后测试
    /hooks add
    # 编辑文件
    # 钩子自动执行

## 最佳实践
  1. 合理使用 :只在必要時使用鉤子,避免過度自動化
  2. 錯誤處理 :確保鉤子命令有適當的錯誤處理
  3. 效能考慮 :避免在鉤子中執行耗時操作
  4. 測試鉤子 :新增鉤子後,測試其行為是否符合預期

總結

/hooks 命令是 Claude Code 中用於自動化工作流的重要工具。透過使用此命令,你可以:

  • 在特定事件發生時自動執行命令
  • 自動化重複性任務
  • 實現自定義工作流
  • 提高工作效率

合理使用 /hooks 命令可以幫助你建立更高效的開發工作流。

基于 MIT 许可发布 | 永久导航