Gotchas around hooks
Возможно, вы заметили, что после выполнения команды npm run dev в директории .claude появляются два файла settings.json. Давайте разберемся, почему.
Рекомендации по безопасности хуков
Документация Claude Code содержит несколько рекомендаций по безопасности хуков:

Одна из них — использование абсолютных путей (а не относительных) для скриптов. Это помогает снизить риски атак, связанных с перехватом путей и внедрением бинарных файлов.
Эта рекомендация значительно усложняет совместное использование файлов settings.json. Причина проста: абсолютный путь к скриптам хуков на вашей машине, скорее всего, будет отличаться от пути на моей, поскольку мы, вероятно, разместим проект в разных директориях.
Решение проблемы с абсолютными путями
Для решения этой проблемы в проекте предусмотрен файл
settings.example.json. В нем ссылки на скрипты содержат заполнитель$PWD.При запуске команды
npm run setupустанавливаются зависимости и выполняется скриптinit-claude.jsиз директории `scripts`. Этот скрипт заменяет заполнитель$PWDабсолютным путем к проекту на вашей машине, копирует файлsettings.example.jsonи переименовывает его вsettings.local.json.
Таким образом, этот скрипт позволяет обмениваться файлами settings.json, сохраняя при этом использование рекомендованных абсолютных путей.