Маленькую папку из трёх файлов понимает любой. А вот открываешь рабочий проект — две сотни файлов, десяток папок с непонятными именами, — и тут же ловишь знакомый холодок: «И как он вообще тут разберётся? Он же не может прочитать всё сразу».
Хорошая новость: Claude Code и не пытается прочитать всё сразу. Он работает не как человек, который пролистывает каждый файл подряд, а скорее как опытный следователь — собирает улики по делу. Давай разберём, как именно он ориентируется в большом коде и что ты можешь сделать, чтобы помочь ему не плутать.
Он не читает всё — он ищет нужное
Главное заблуждение новичка: будто Claude перед ответом проглатывает весь проект целиком. Нет. В большом репозитории это и невозможно, и не нужно — представь, что тебя просят найти один телефон в городе, а ты в ответ решаешь обойти каждую квартиру. Глупо. Ты сначала смотришь на карту, потом идёшь по нужному адресу.
Claude делает то же самое, только инструментами терминала:
- Сначала структура. Он смотрит, какие есть папки и файлы — строит в голове карту проекта, не читая содержимое. Где тут вход, где тесты, где настройки.
- Потом поиск. Нужно понять, где обрабатывается форма? Он ищет по всему коду слово
formилиsubmit— и сразу видит, в каких файлах оно встречается. Это какgrep, только за тебя. - И только потом чтение. Найдя пару подозрительных файлов, он открывает именно их — не все двести, а те три, что относятся к делу.
Получается узкая тропинка через большой город, а не блуждание по всем улицам. Поэтому Claude уверенно работает с проектами, которые целиком в его «голову» никогда бы не поместились: он держит в памяти не весь код, а только тот кусочек, что нужен прямо сейчас.
Контекст — это его рабочий стол, и он не резиновый
Всё, что Claude прочитал по ходу задачи, лежит у него на «рабочем столе» — это и есть контекстное окно. Стол большой, но не бесконечный. Если свалить на него пятьдесят файлов «на всякий случай», самое старое начнёт уезжать за край, и Claude потеряет ниточку.
Именно поэтому привычка искать нужное, а не грузить всё подряд, работает в обе стороны. Когда ты просишь точечно — стол остаётся чистым, и модель помнит всё важное по задаче. Когда вываливаешь «прочитай весь проект и скажи, что не так» — стол забивается, и ответы плывут.
Совет
Если чувствуешь, что Claude «поплыл» на большом проекте и путается в файлах — не спорь с ним по кругу. Начни свежий разговор под конкретную подзадачу: «давай только про авторизацию». Чистый стол под одну тему почти всегда лучше, чем переполненный под десять.
Как помочь ему не плутать
Claude хорошо ориентируется сам, но пара простых привычек с твоей стороны превращают «неплохо» в «отлично». И обе — не про код, а про то, как ты ставишь задачу.
Первое — точные просьбы. Сравни два запроса к одному и тому же проекту:
«Посмотри проект и почини, что сломано.»
«При отправке формы регистрации приложение падает. Найди, где обрабатывается эта форма, и покажи, почему пустой email может ронять приложение.»
Первый заставляет Claude вслепую бродить по всему репозиторию. Второй даёт ему отправную точку для поиска — слово «форма», слово «регистрация», симптом «падает». Он сразу знает, что искать, и идёт по короткой тропинке. Чем конкретнее ты называешь, что именно и где болит, тем меньше файлов ему придётся перелопатить.
Второе — карта проекта в файле CLAUDE.md. Это короткий текстовый файл в корне проекта, который Claude читает первым в каждом новом разговоре. Туда удобно положить пару подсказок про устройство кода:
В этом проекте:
- логика страниц лежит в папке app/
- запросы к базе — в lib/db/
- тесты рядом с кодом, файлы *.test.ts
- не трогай папку config без спроса
Это не магия и не обязательная бюрократия — просто записка «куда смотреть», которую ты пишешь один раз. С ней Claude не угадывает структуру заново каждый раз, а сразу идёт по нужному адресу. На большом проекте это экономит и его «прогулки» по файлам, и твоё время на объяснения. (Подробный разбор, что класть в этот файл, у нас есть в гайде по CLAUDE.md — здесь же главное, что он работает как навигатор.)
Что унести с собой
Большой репозиторий пугает только до тех пор, пока думаешь, что его надо «осилить целиком». Claude его не осиливает — он ищет нужное, читает по делу и держит на столе только то, что относится к задаче. Ровно так, как ты сам искал бы один адрес в незнакомом городе, а не обходил весь город подряд.
А твоя роль простая: дать ему хорошую отправную точку. Точная просьба вместо размытой, пара строк в CLAUDE.md вместо «разбирайся сам» — и проект на сотню файлов перестаёт быть лабиринтом. Не потому что ты выучил его наизусть, а потому что вы оба знаете, куда смотреть.
Этому ритму — спокойно входить в любой код, искать нужное и не теряться в большом проекте — проще всего научиться с самого начала, по шагам и в безопасной песочнице.