Тонкости работы с хуками
⏱️ Примерное время: ~12 минут · 🎯 Урок 15 курса «Claude Code in Action»
После выполнения команды npm run setup вы можете заметить два файла settings.json в каталоге .claude. Вот что происходит.
В документации Claude Code приводятся рекомендации по безопасности хуков. Одна из них — использовать для скриптов абсолютные пути (а не относительные): это помогает снизить риск атак с перехватом пути (path interception) и подменой бинарных файлов (binary planting).
Из-за этой рекомендации становится сложнее делиться файлами settings.json: абсолютный путь к скриптам хуков на вашей машине будет отличаться от пути на другой машине, поскольку проект расположен в разных каталогах.
Чтобы решить эту проблему, в проекте есть файл settings.example.json, где ссылки на скрипты содержат подстановочный знак $PWD. Когда вы запускаете npm run setup, он устанавливает зависимости и запускает скрипт init-claude.js из каталога scripts. Этот скрипт заменяет подстановочный знак $PWD абсолютным путём к проекту на вашей машине, копирует settings.example.json и переименовывает его в settings.local.json.
Это позволяет делиться файлами settings.json, продолжая при этом использовать рекомендованные абсолютные пути.
*Адаптировано с русским переводом. Оригинал: © 2025 Anthropic. All rights reserved.*