Что понадобится
- Установленный Claude Code. Проверяется командой
claude --version- в ответ приходит номер версии. - Папка проекта, с которым будешь работать. Почти вся настройка живёт файлами внутри неё.
- Полчаса один раз. Дальше настройка только дополняется по ходу дела.
Что такое сам Claude Code - в словаре. Если ещё выбираешь инструмент - сравнение с Cursor.
Всё, что ниже, проверено на живой установке версии 2.1.259.
Главное, что надо понять до первой команды
Настройка Claude Code - это не одно окно с галочками. Это четыре разные вещи, и путать их дорого:
- Правила проекта - что агент должен знать про твой код и твои порядки.
- Память - что он помнит после того, как сессия закрылась.
- Разрешения - что ему можно без вопроса, а что нельзя никогда.
- Скиллы - готовые навыки, которые он подхватывает по имени.
Порядок именно такой, и он не случайный. Правила без разрешений дают бесконечное «можно?» на каждый шаг. Разрешения без правил дают быстро сделанную ерунду. Скиллы ставятся последними: пока первых трёх нет, они просто занимают место.
Второе, что стоит понять сразу: почти вся настройка - это текстовые файлы на диске, а не меню. Панели внутри сессии - /memory, /permissions, /hooks - правят эти же файлы. Знаешь, где файл лежит, настроишь что угодно, хоть блокнотом.
Шаг 1. Правила проекта - файл CLAUDE.md {#shag-1}
Самый важный файл и самый простой. Обычный текст в разметке markdown, лежит в корне проекта. Агент читает его в начале каждой сессии - это его инструктаж.
Заготовку он соберёт сам по твоему коду:
/init
Открыть и поправить, не выходя из сессии:
/memory
Что туда писать - три вещи, остальное потом:
- чем проверять работу: команда тестов, команда сборки;
- куда не лезть: папки и файлы, которые трогать нельзя;
- как у вас принято: имена, стиль, порядок работы с ветками.
Файл работает на трёх уровнях, и они складываются:
| Где лежит | На что действует |
|---|---|
CLAUDE.md в корне проекта |
только этот проект, едет вместе с ним в репозиторий |
CLAUDE.md в домашней папке .claude |
все проекты на этой машине - твои личные привычки |
CLAUDE.md в подпапке проекта |
подхватывается, только когда агент открывает файлы из этой подпапки |
Приём, который экономит место: строка, которая начинается со знака @ и пути, подтягивает содержимое другого файла целиком. У меня в домашнем CLAUDE.md стоит такая строка на карточку бизнеса - и карточка попадает в контекст любой сессии любого проекта, а сам свод правил не пухнет.
Главная ошибка на этом шаге - писать в CLAUDE.md то, что агент и так видит в коде. Он умеет читать. Пиши то, чего в коде нет: почему так решили, что уже пробовали и не сработало, чего делать нельзя ни при каких условиях.
Шаг 2. Память между сессиями {#shag-2}
Тут людей путает похожесть слов. CLAUDE.md - это правила, они не меняются сами. Память - это накопленное: решения, находки, грабли.
Разница простая: правила ты пишешь сам, память пишется сама.
Каталог, куда она пишется, задаётся в настройках ключом autoMemoryDirectory. Внутри - индексный файл MEMORY.md, который подгружается в каждую сессию, и папки по проектам с подробностями. То есть в контекст всегда попадает короткий список «что где искать», а не вся история разом.
Второй механизм - откат. Двойное нажатие Esc возвращает разговор и файлы к более раннему моменту, та же панель открывается командой /rewind. Это не про хранение, а про «ушли не туда, вернись назад»: история git при этом остаётся чистой.
Третье, о чём стоит знать заранее: окно контекста конечно. Когда оно кончается, разговор сжимается. Сжать вручную - команда /compact, размер окна, после которого сжатие включается само, задаётся ключом autoCompactWindow.
Практика простая: закрывая большой кусок работы, попроси записать выводы. Иначе следующая сессия начнётся с нуля и ты будешь пересказывать одно и то же по третьему разу.
Шаг 3. Разрешения - что можно без вопроса {#shag-3}
Пока разрешения не настроены, агент спрашивает почти на каждое действие. Через час это выматывает, и человек начинает жать «да» не глядя - вот это и есть настоящая опасность, а не сами вопросы.
Панель:
/permissions
Она заранее разрешает и заранее запрещает три вещи: команды в терминале, правки файлов и инструменты MCP. Под капотом пишет в settings.json списки правил: allow - можно без вопроса, deny - нельзя никогда, ask - спрашивать всегда. Два главных выглядят так:
{
"permissions": {
"allow": ["Bash(git status*)", "Bash(npm *)", "Read", "Edit"],
"deny": ["Bash(rm -rf*)", "Read(**/.env)", "Read(**/secrets/**)"]
}
}
Читается так: в скобках инструмент, внутри образец, звёздочка значит «и дальше что угодно». Запрет сильнее разрешения - если строка попала в deny, никакой allow её не перебьёт.
Файлов настроек четыре, и они складываются по возрастанию силы:
| Файл | Кого касается |
|---|---|
settings.json в домашней папке .claude |
твои личные настройки во всех проектах |
.claude/settings.json в проекте |
общие для команды, кладутся в репозиторий |
.claude/settings.local.json |
твои личные в этом проекте, в репозиторий не идут |
managed-settings.json |
правила организации, поверх всего остального |
Что внести в deny в первый же день: удаление папок целиком, чтение файлов с ключами (.env, папки вида secrets), любые команды «скачай и сразу выполни». Это те случаи, где ошибка не откатывается.
Режим, в котором сессия работает по умолчанию, тоже настраивается - командой /config. Отдельно стоит знать про режим плана: в нём агент сначала показывает, что собирается сделать, и только потом делает. Для первых недель это лучший вариант.
Полный обход проверок в Claude Code есть, и он специально назван словом «опасно». Включать его имеет смысл там, где ломать нечего.
Шаг 4. Скиллы - готовые навыки {#shag-4}
Скилл - это папка с файлом SKILL.md, в котором лежит инструкция: когда браться и что делать по шагам. Подробнее - что такое скилл.
Куда класть:
.claude/skills/deploy/SKILL.md - только в этом проекте
~/.claude/skills/deploy/SKILL.md - во всех проектах
Положил - и в сессии появляется команда /deploy. Посмотреть, что уже стоит:
/skills
Внутри SKILL.md короткая шапка. Обязательных полей в ней нет, имя команды берётся из названия папки, но одну строку писать надо:
---
description: Когда просят выкатить на прод - собрать, прогнать тесты, выложить
---
description - самое важное поле во всей затее. По нему агент решает, браться за скилл или нет. Написал расплывчато - скилл либо не сработает никогда, либо будет лезть туда, куда не просят.
И цена вопроса, о которой мало кто думает. Описание каждого скилла висит в контексте каждого хода, а сам файл читается только когда скилл запускается. Значит, десяток скиллов не стоит почти ничего, а несколько сотен уже заметно съедают место под саму задачу. У меня на машине их пять с лишним сотен - это перебор, за который платишь контекстом каждый ход. Ставь то, чем правда пользуешься.
Шаг 5. Проверить, что всё подхватилось {#shag-5}
Здоровье установки:
claude doctor
Команда печатает версию, способ установки, платформу и состояние автообновления. Внутри сессии есть более подробная проверка - /doctor.
Дальше проверка по-человечески: открой сессию в проекте и попроси пересказать правила своими словами. Пересказал - CLAUDE.md прочитан. Не пересказал - файл лежит не в корне или назван иначе.
Когда четырёх штук мало: хуки и MCP
Хуки - твои собственные скрипты, которые запускаются на событиях: перед вызовом инструмента, после ответа, при старте и завершении сессии. Посмотреть, что и когда срабатывает, - командой /hooks. Пишутся они в settings.json:
{
"hooks": {
"Stop": [
{ "hooks": [ { "type": "command", "command": "bash ~/scripts/posle-otveta.sh" } ] }
]
}
}
Имена событий, которые работают у меня прямо сейчас: PreToolUse, UserPromptSubmit, Stop, SubagentStop, PreCompact, SessionEnd, PermissionRequest.
MCP - способ дать агенту новые инструменты: почту, базу, браузер. Подключается из сессии командой /mcp или из терминала:
claude mcp add moy-server -- npx paket-servera
Что это вообще такое - в словаре.
Куда смотреть, если что-то не так
| Что видишь | Что это значит |
|---|---|
| агент не знает правил проекта | CLAUDE.md лежит не в корне или назван иначе |
| спрашивает разрешение на каждый шаг | список allow пустой, начни с /permissions |
| правка настроек ни на что не повлияла | тебя перебивает файл сильнее: проектный или организации |
| скилл не запускается сам по смыслу | слабое description в шапке SKILL.md |
| после настройки всё поехало | запусти сессию с ключом --safe-mode: он отключает все надстройки |
| контекст кончается быстрее прежнего | много скиллов и раздутый CLAUDE.md, режь оба |
Пять ошибок, на которых спотыкаются
- Складывать в
CLAUDE.mdвсё подряд. Файл читается каждую сессию целиком: чем он толще, тем меньше места остаётся под саму работу. - Настраивать разрешения по одному в диалоге. Через час устанешь и начнёшь жать «да» не читая. Пять минут в
/permissionsв начале дня дешевле. - Не заполнять
deny.allowэкономит время,denyспасает файлы. Второе важнее. - Ставить скиллы пачками «на будущее». Каждый висит описанием в контексте, а пользуешься ты тремя.
- Класть личное в общий файл. Привычки - в домашнюю папку, командное - в
.claude/settings.jsonпроекта, своё в чужом проекте - в.claude/settings.local.json.
Что дальше
- Что такое Claude Code - если термин ещё не оформился.
- Что такое скилл и что такое MCP - две вещи, которые пригодятся сразу после базовой настройки.
- Claude Code или Codex - если ещё выбираешь между двумя.
- Скиллы в Codex - там устройство другое, и это полезно знать заранее.
Всё, что я собрал по настройке для своих проектов, лежит в ClaudeBase: файлы добавляются в проект по инструкции, и агент читает их в рабочем контексте.