Когда работаешь с Claude в VS Code, у тебя накапливаются настройки: разрешения, подключённые серверы, автоматические действия. Все вот эти вот кнопочки, на которые ты жмёшь: «Yes», «No» – это новые строчки правил.
И иногда надо:
Вот для этого полезно знать :) где что лежит.
И именно об этом данный урок.
Файл Где лежит Что хранит settings.json Настройки Claude (на компе) Глобальные разрешения и хуки settings.json Папка .claude/ в проекте Проектные разрешения и хуки settings.local.json Папка .claude/ Личные настройки проекта .mcp.json Корень проекта Подключённые MCP серверы CLAUDE.md Корень проекта Контекст проекта, описание skills/ Папка .claude/ Скиллы (правила для задач) agents/ Папка .claude/ Кастомные агенты (имя, модель, инструменты) handoff.md Папка .claude/ Память между сессиями MEMORY.md Настройки Claude (на компе) Авто-память: Claude сам пишет заметки между сессиями
[ x ] Корень проекта — главная папка проекта, та самая которую ты открываешь в VS Code.
[ x ] Папка .claude/ — скрытая папка внутри проекта. Claude создаёт её сам, когда ты добавляешь команды, скиллы или настройки. Она уже есть если ты что-то настраивал.
[ x ] Настройки Claude (на компе) — отдельная папка, которая не привязана ни к какому проекту. Там лежат настройки, которые работают везде. Claude сам знает где она, тебе туда лазить не нужно.
Когда братишка спрашивает «можно выполнить эту команду?» и ты отвечаешь «да, всегда» > это сохраняется в settings.json.
Есть 3 уровня разрешений:
Пример содержимого:
{
"permissions": {
"allow": ["Read", "Edit", "WebSearch"],
"deny": ["Bash(rm -rf:*)"],
"ask": ["Bash(npm:*)"]
}
}
Это значит: читать и редактировать файлы можно. Удалять через rm -rf = нельзя. Команды npm = спрашивать.
Обрати внимание на * в конце — это «wildcard», шаблон. Bash(git:*) означает «любые команды git без вопросов». Bash(npm run:*) — любые npm run скрипты. Удобно, чтобы не подтверждать каждую мелочь.
Если одна и та же настройка есть в нескольких файлах, побеждает более локальная:
Локальные (.claude/settings.local.json)
↓ имеют приоритет над
Проектные (.claude/settings.json)
↓ имеют приоритет над
Глобальные (~/.claude/settings.json)
Это позволяет:
Подключённые серверы хранятся отдельно в .mcp.json:
{
"mcpServers": {
"название-сервера": {
"command": "node",
"args": ["/путь/к/серверу/index.js"]
}
}
}
Этот файл можно коммитить, тогда все в команде будут использовать одни и те же серверы.
Бывает такое: работаешь с Claude на русском, а после длинной сессии он вдруг начинает отвечать на английском. Это происходит когда контекст сжимается, Claude теряет понимание на каком языке вы общались.
Лечится одной настройкой. Скажи ему:
Добавь в мои глобальные настройки Claude Code параметр «language» со значением «russian».
Он найдёт файл ~/.claude/settings.json и допишет туда "language": "russian". После этого — всегда будет отвечать на русском, даже после сжатия контекста.
[ = ] Посмотреть текущие настройки:
Покажи мои разрешения для Claude Code и объясни что каждое означает.
[ + ] Добавить разрешение:
Разреши выполнять команды git без подтверждения.
[ - ] Убрать разрешение:
Убери разрешение на автоматическое редактирование файлов, хочу чтобы спрашивал.
[ x ] Сбросить всё:
Покажи все разрешения и помоги убрать лишние.
Claude Code сам найдёт нужный файл и внесёт изменения.
[ x ] Claude делает что-то без спроса
Ты когда-то ответил «да, всегда» на такое действия. Посмотри разрешения и убери лишнее.
[ x ] Настройки не применяются
Проверь приоритет: локальный файл может переопределять проектный. Если ничё не понял из того, что я щас написал, спроси у Клода. Он не осуждает за глупость, и спокойно отвечает на все вопросы.
[ x ] Перенос на новый комп
Скопируй ~/.claude/settings.json — там глобальные настройки. Проектные настройки уже в репозитории.
Есть еще много популярных проблем, и способов их решить, грамотно управляя настройками Claude Code, но вот это всё выше – базовая база. Запомнишь чё где лежит, и дальше проще будет.
💭 От Тома:
Большую часть времени в эти файлы лезть не нужно, настройки накапливаются сами. Но иногда поглядывать и наводить порядок полезно. А когда что-то идёт не так, или надо перенести настройки, понимание где чё лежит, поможет не потерять привычный рабочий процесс.