Как Claude Code устроен
Агентная петля, контекст-окно и предсказание токенов — почему агент «забывает», иногда врёт и каждый раз отвечает по-разному. Правильная картина в голове.
Чтобы хорошо работать с агентом, не нужно знать его внутренности до байта. Но нужна правильная картина в голове — иначе его поведение кажется магией или глюком. Разберём три вещи: петлю, окно и природу ответа.
1. Это петля, а не «вопрос-ответ»
Claude Code не выдаёт ответ одним выстрелом. Он крутит цикл:
получил задачу
│
▼
подумал, что делать ──► вызвал инструмент (прочитал файл,
▲ запустил команду, поискал в коде)
│ │
└──── посмотрел результат ◄─┘
│
▼
готово? ── нет ──► снова
│
да → отдал результатПоэтому он умеет «сам разобраться»: прочитать файлы, запустить тесты, увидеть ошибку, поправить и повторить. Это и есть «агентность» — в отличие от чат-бота, у которого только текст.
2. Всё, что он знает в моменте — это контекст-окно
У агента нет «памяти обо всём». В каждый момент он видит только то, что лежит в контекст-окне:
- системные инструкции,
- твой
CLAUDE.md, - историю текущего диалога,
- файлы и результаты команд, которые он прочитал по ходу дела.
Окно конечно. Когда оно заполняется, старое вытесняется или сжимается — отсюда ощущение, что агент «забыл», о чём вы говорили час назад. Это не баг, а предел рабочей памяти. Управлять им — отдельный навык: контекст и откат.
Практический вывод №1: качество выхода = качество того, что в окне. Ты управляешь не «умом» агента, а тем, что в это окно попадает. Отсюда вся дисциплина промптов.
3. Он предсказывает, а не «понимает»
Под капотом модель предсказывает следующий токен по вероятностям, опираясь на обучение. Она не сверяется с истиной, как база данных. Из этого следуют три важные вещи:
- Уверенный тон ≠ правота. Агент может убедительно сослаться на функцию, флаг или файл, которых не существует — это называется галлюцинация.
- Знание устаревает. Модель обучена до какой-то даты; про свежие версии библиотек она фантазирует. Лечится подключением актуальной документации (Context7).
- Недетерминизм. Один и тот же промпт может дать разные ответы. Это нормально, а не поломка.
Практический вывод №2: раз агент может уверенно ошибаться — результат всегда проверяется. Это не паранойя, это инженерия. Подробно — в ревью и верификации.
Проверь себя
1. Почему агент «забывает», о чём вы говорили в начале долгой сессии?
2. Агент уверенно ссылается на метод библиотеки, которого нет. Как это называется и почему происходит?
3. От чего сильнее всего зависит качество ответа агента?
Практики
Как работать с Claude Code по-взрослому — понять устройство, формулировать промпты, планировать, проверять результат и знать границы.
Дисциплина промптов
Inputs определяют outputs. Как ставить задачу агенту — контекст, конкретика, примеры, итерации — чтобы получать то, что нужно, а не правдоподобную воду.