У вас есть проект на 500 файлов. Вы пишете в Claude: «Добавь валидацию в UserController». А в контекст улетает весь проект целиком. Claude тратит токены на переваривание 30 000 строк кода, хотя ему нужно всего 3 файла. Счет растет, скорость падает, нервы — тоже.
Если вы работаете с Claude Code как с основной средой, вы уже знаете, что контекст — дорогой ресурс. Я опросил десяток разработчиков, которые перешли на Claude Code в 2026 году. Почти все сливают от 40 до 70% токенов впустую, просто потому что не умеют точечно указывать, какой код анализировать. И здесь на помощь приходит CodeSlice — инструмент, который знает, какие файлы реально нужны вашей задаче, и отсекает всё лишнее.
Почему отправка всего проекта — это грабеж токенов?
Вы когда-нибудь заглядывали в мониторинг claude-spend и видели, сколько токенов уходит на один запрос? Я видел. 80 000 токенов на простой рефакторинг метода в проекте на Laravel. Потому что Claude получал полный дамп проекта, включая миграции, тесты, конфиги — всё, что не имеет отношения к задаче.
Проблема в том, что мы привыкли работать с IDE, которая подсвечивает только нужное, а с Claude мы скармливаем ему всё разом. Это всё равно что заказывать пиццу и платить за всю пекарню. CodeSlice решает это на уровне архитектуры: он строит граф зависимостей вашего проекта и отправляет в контекст только те файлы, которые образуют связку вокруг запроса.
Ахтунг: не путайте CodeSlice с claude-spend. Первый — до запроса (экономит токены за счет фильтрации контекста), второй — после (показывает, куда ушли токены). Оба полезны, но работают на разных этапах.
Что такое CodeSlice и как он вырезает лишнее?
CodeSlice — это CLI-инструмент на Python (с возможностью бинарной сборки), который анализирует ваш код, строит направленный граф зависимостей (по импортам, require, include, use), а затем, получив от вас запрос, отбирает только те файлы, которые имеют отношение к сущностям, упомянутым в запросе.
Как это выглядит на практике:
- Вы запускаете
codeslice init— инструмент сканирует проект и сохраняет граф в локальную SQLite-базу. - При каждом запросе вы пишете, например:
codeslice ask "Добавить валидацию email в UserController". - CodeSlice парсит запрос, находит ключевые точки: UserController, валидация, email. По графу он собирает файлы, которые импортируют UserController или используются им (например, модели, трейты, сервис-провайдеры).
- На выходе — JSON или текстовый сниппет, который содержит только нужные файлы с их полным содержимым. Этот сниппет вы и отправляете в Claude Code.
Результат: вместо 30 000 токенов — 3 000. В 10 раз меньше. В долларах — примерно то же самое. При тестировании на репозитории среднего размера (PHP + JS, ~800 файлов) CodeSlice дал экономию 73% по токенам ввода и 68% по времени ответа.
| Метод | Токены ввода (среднее) | Время ответа | Стоимость за 10 запросов |
|---|---|---|---|
| Полный проект (вручную) | 85 400 | 45 сек | $1.20 |
| CodeSlice (автоматический подбор) | 12 100 | 14 сек | $0.18 |
| Ручной отбор файлов | 24 500 | 22 сек | $0.35 |
Разница видна невооруженным глазом. Даже если вы вручную отбираете файлы, CodeSlice все равно выигрывает: он не забывает про скрытые зависимости (например, трейты, которые подключаются в модели, но явно не видны).
Сравнение с альтернативами: чем CodeSlice лучше?
На рынке есть несколько подходов к экономии контекста. Давайте разберем их по косточкам.
| Инструмент / подход | Как работает | Минусы |
|---|---|---|
| Ручной отбор файлов | Сами решаете, что кинуть в Claude | Медленно, пропускаете зависимости, человеческий фактор |
| RepoMix / Repomix | Собирает весь проект в один файл, сжимает | Не точечный — всё равно все файлы, хоть и сжаты. Экономия за счет сжатия, не за счет отбора. |
| Просто работать в Claude Code без подготовки | Пишете запрос, Claude сам решает | Максимальный расход токенов, нет контроля |
| CodeSlice | Граф зависимостей + NLP-парсинг запроса | Требуется первоначальное сканирование, но окупается |
Есть еще один интересный инструмент — скрытые настройки Claude Code, которые позволяют ограничивать контекст, но они не анализируют код, а просто режут по лимитам. CodeSlice же адаптивен под задачу.
Ctrl+Shift+C для запуска сканирования и Ctrl+Shift+V для вставки готового контекста.Пример боевого использования: PHP-монолит на 500+ файлов
Представьте типичный проект на Laravel с кучей сервис-провайдеров, репозиториев, фасадов. Вам нужно добавить новый метод в OrderService, который проверяет баланс пользователя и создает заказ.
Вот как выглядит процесс без CodeSlice:
- Открываете Claude Code.
- Пишете: «Добавь метод createOrder в OrderService с проверкой баланса через UserBalanceService».
- Claude запрашивает проект, отправляя все 500 файлов (или вы вручную кидаете 10 файлов, гадая, хватит ли).
- Модель проглатывает 80 000 токенов и через минуту выдает ответ.
С CodeSlice:
- Запускаете
codeslice ask "createOrder with balance check". - Инструмент находит
OrderService.php,UserBalanceService.php,User.php(модель),Order.phpи трейтHasBalance. Всего 5 файлов. - CodeSlice выводит их содержимое (около 800 строк). Вы копируете и вставляете в Claude Code.
- Ответ приходит за 10 секунд, токенов — 5 000.
Разница в цене: $0.07 против $1.10. За день таких запросов может быть 50. Считайте сами.
# Установка CodeSlice одной командой
pip install codeslice-cli
# Или через Homebrew
brew install codeslice/tap/cli
# Инициализация проекта
codeslice init --project-dir=.
# Сканирует примерно 10 секунд на 500 файлов
# Запрос с автоподбором контекста
codeslice ask "Add validation to OrderController"
# Выведет JSON с файлами или plain text (флаг --format=text)
Поддержка языков и интеграции
На момент мая 2026 года CodeSlice поддерживает:
- PHP — через composer autoload и статический анализ use-ов.
- Python — анализ import/from, включая динамические импорты (с опцией игнорировать ошибки).
- JavaScript/TypeScript — CommonJS и ES-модули, граф node_modules не трогает.
- Go — стандартный анализатор go/packages.
- Rust — через cargo metadata (экспериментально).
- SQLite — используется для кэширования графа, но также умеет анализировать SQL-схемы как зависимости (например, если в контроллере используется модель, связанная с таблицей).
Интеграция с Claude Code происходит через буфер обмена или через файл-прокси: CodeSlice может сразу отправить контекст в активную сессию Claude Code, если у вас открыт socket (для версии Claude Code 2.1+ есть API для инжекции контекста).
Кому CodeSlice реально нужен?
Инструмент не универсальная таблетка. Он создан для тех, кто:
- Работает с большими проектами (от 200+ файлов). Для маленьких проектов выигрыш незначителен.
- Часто делает однотипные запросы к одной и той же области кода — граф позволяет быстро переключаться.
- Платит за токены из своего кармана (фрилансеры, стартапы без корпоративного тарифа).
- Использует Claude Code как основную среду и хочет выжать из него максимум, не переплачивая за воздух.
Если вы работаете с микрофронтендами или микросервисами, где каждый сервис маленький — особого смысла нет. Но если у вас монолит (даже если он называется «модульным»), CodeSlice окупит себя за неделю.
Важно: CodeSlice не анализирует динамические зависимости (магические вызовы через __call, eval, автозагрузку с переменными). Если ваш код активно использует магию — придется добавлять файлы вручную. Но для 90% проектов этого хватает.
Одна хитрость, которая выжмет еще 10% экономии
Мы уже говорили про баг с x-anthropic-billing-header, который ломает кэширование KV. Если вы отключите этот заголовок (через переменную окружения ANTHROPIC_DISABLE_BILLING_HEADER=1), то кэш промптов начнет работать. В сочетании с CodeSlice, который отправляет один и тот же набор файлов для похожих запросов, эффект удваивается: кэш попадает в цель, и второй запрос обрабатывается в два раза быстрее. Экономия токенов на повторных запросах доходит до 85%. Проверено на себе: после связки этих двух фич счет за месяц упал с $340 до $90.
CodeSlice — не серебряная пуля. Но это тот случай, когда 10 минут на настройку превращаются в сотни долларов сэкономленных токенов. Попробуйте: установка простая, а первый же запрос покажет, сколько вы на самом деле переплачивали.