3.4 Hooks注意事项
当你运行 npm run dev 后,可能会发现 .claude 目录里出现了两个 settings.json 文件。下面解释原因。
Claude Code 文档对 hooks 的安全性给出了一些建议。

其中一条是脚本应使用绝对路径(而非相对路径),以缓解“路径劫持”和“二进制植入”攻击。
这条建议带来一个实际问题:共享 settings.json 文件会更困难。原因很简单:你机器上的任意 hook 脚本的绝对路径,几乎肯定与我机器上的绝对路径不同,因为我们通常将项目放在不同目录。
为解决这个问题,项目提供了一个 settings.example.json 文件。其中脚本引用使用 $PWD 占位符。当我们运行 npm run setup 时,除安装依赖外,还会执行位于 scripts 目录中的 init-claude.js 脚本。该脚本会将 $PWD 占位符替换成你机器上该项目的绝对路径,复制 settings.example.json 并重命名为 settings.local.json。
通过这个脚本,我们既能共享 settings.json 文件,又能遵循“使用绝对路径”的安全建议!