第 16 节

Hook 最容易踩的坑

Hook 有一个安全问题很多人忽略:路径问题。用相对路径写 Hook 命令,在某些情况下可能被劫持——攻击者在你的工作目录放一个同名文件,Hook 就会执行它。官方文档明确建议用绝对路径,这不是建议是强制。

为什么必须用绝对路径

团队共享和绝对路径的矛盾

npm run dev 后出现两个 settings 文件

⚠ 易错点:很多人在这里浪费时间:改了 settings.example.json,但没跑 setup 脚本重新生成 local 版本,导致绝对路径没更新,Hook 一直不生效。每次改 example 文件后记得重新跑 setup。

📝 CH16 相关考题4 题

Q15

Claude Code SDK 默认使用什么权限模式,如何授权写操作?

A. 默认完全写入权限,无需额外配置
B. 默认仅读取权限,写操作需传入 allowedTools 参数或全局配置
C. 默认无任何权限,所有操作均需手动授权
D. 权限继承自当前用户的系统权限
✓ 答案 B:默认仅读取权限,写操作需传入 allowedTools 参数或全局配置
Q16

/init 命令在 Claude Code 中的主要作用是什么?

A. 初始化新的 Node.js 或 Python 项目脚手架
B. 安装并升级 Claude Code 到最新版本
C. 分析代码库结构并自动生成 CLAUDE.md 项目配置文件
D. 重置所有 Claude Code 设置到默认值
✓ 答案 C:分析代码库结构并自动生成 CLAUDE.md 项目配置文件
Q17

Claude Code 的 5 档 Thinking Mode 主要适合哪类场景?

A. 所有日常开发任务,提升整体代码质量
B. 广泛理解代码库结构和架构设计
C. 复杂逻辑推理、Bug 排查、算法挑战等需要深度思考的任务
D. 多文件同时修改时保持一致性
✓ 答案 C:复杂逻辑推理、Bug 排查、算法挑战等需要深度思考的任务
Q18

Hook 开发时如何调试不熟悉的 Hook 输入数据结构?

A. 查阅官方文档中的完整 JSON Schema 定义
B. 运行 jq . > log.json 将 Hook 输入数据保存到文件中观察真实结构
C. 使用 Claude Code 内置的 Hook 调试器逐步执行
D. 在 settings.json 中开启 debug 模式查看输出
✓ 答案 B:运行 jq . > log.json 将 Hook 输入数据保存到文件中观察真实结构