Чем больше файлов вы предоставляете Claude для ознакомления, тем меньше он на самом деле «понимает» в архитектуре вашей системы.
Когда мы говорим о «вайбкодинге», может сложиться впечатление, что ИИ обладает магической интуицией. Однако Claude Code — это не человек с глазами, а алгоритм, обрабатывающий текст. Когда он сканирует ваш проект, он видит не папки, а длинную текстовую строку, описывающую иерархию. Если эта строка слишком длинная или запутанная, интеллект модели начинает «размываться».
В предыдущем уроке мы учились превращать идеи в компоненты системы. Сегодня мы разберемся, как эти компоненты должны физически располагаться в проекте, чтобы Claude не просто «видел» их, а понимал их предназначение без лишних уточнений.
Механика восприятия: Контекстное окно
Представьте, что вы читаете книгу через узкую щель в заборе. Вы видите только несколько строк за раз. Чтобы понять смысл всей страницы, вам нужно удерживать в памяти то, что вы прочитали секунду назад. У Claude есть похожая характеристика — Контекстное окно. Это объем данных (текста, кода, путей к файлам), который модель может «удержать в голове» одновременно.
Когда вы запускаете Claude в директории проекта, он первым делом выполняет команду, аналогичную ls -R (показать все файлы рекурсивно). Если у вас 500 файлов в одной папке, значительная часть его «оперативной памяти» тратится просто на то, чтобы запомнить их названия. Это повышает когнитивную нагрузку ИИ.
Токенизация путей: Как ИИ «читает» адрес
Каждое слово или часть слова для ИИ — это токен. Путь к файлу users/profile/avatar.png превращается в набор токенов.
Если вы используете плоскую структуру (все файлы в одной папке), Claude вынужден анализировать каждый файл как уникальный объект без контекста. Но если вы используете иерархию, Claude применяет принцип семантической плотности. Видя папку auth/, он автоматически повышает вероятность того, что файлы внутри относятся к логике входа, и ему не нужно перечитывать весь код, чтобы это понять.
Когда структура хаотична (например, scripts/one.py, scripts/two.py), модель начинает «догадываться» о содержании. Именно здесь рождаются галлюцинации: ИИ предполагает, что в файле logic.js находится бизнес-логика, хотя там могут быть просто настройки форматирования текста.
Почему структура предотвращает ошибки
Claude Code использует так называемый «семантический поиск» по вашим файлам. Перед тем как выполнить задачу, он ищет наиболее подходящие фрагменты кода.
- Поиск по именам: Если названия файлов расплывчаты (
data1.js, data2.js), Claude может выбрать не тот файл для редактирования.
- Дерево зависимостей: Четкая структура позволяет ИИ быстрее строить карту того, какой файл импортирует другой.
- Изоляция проблем: В методе Spec-First мы стремимся к тому, чтобы одна папка соответствовала одному компоненту системы. Это создает для ИИ «безопасную зону», где он не отвлекается на посторонний код.
Практические правила «зрения» Claude
Чтобы Claude не ошибался, следуйте правилу «Один компонент — одна папка». Если вы создаете систему уведомлений, все, что к ней относится (спецификации, API-запросы, стили), должно лежать в папке notifications/.
Для нетехнического архитектора структура папок — это и есть программирование. Когда вы говорите Claude: «Создай структуру проекта для маркетплейса», вы фактически задаете границы его будущего мышления. Если вы позволите ему создать 20 файлов в корневой папке, вы обрекаете систему на будущие ошибки, так как при каждом следующем запросе Claude будет тратить слишком много усилий на то, чтобы просто разобраться, какой файл за что отвечает.
Реальное применение: Рефакторинг «на лету»
Представьте, что вы разрабатываете приложение для доставки еды. У вас есть папка logic/, где лежат файлы calculate.js, process.js и send.js. Claude постоянно путает, где рассчитывается стоимость доставки, а где налоги, потому что названия слишком общие.
Применив знания о «зрении» ИИ, вы даете команду: Claude, реорганизуй файлы так, чтобы структура отражала бизнес-сущности: OrderCalculation, PaymentProcessing и DeliveryDispatch.
После этого переименования Claude мгновенно станет «умнее». Он перестанет предлагать изменения в расчете налогов, когда вы просите поправить логику курьеров, потому что теперь эти данные разделены физически и семантически. Это и есть суть вайбкодинга: управление вниманием нейросети через архитектурный порядок.
В следующем уроке мы разберем, что происходит, когда архитектура остается «расплывчатой», и как это приводит к каскадному разрушению проекта.