Claude Code перешёл на Bun после переписывания runtime на Rust
Что изменилось в Claude Code
Знаете, что происходит, когда компания с миллиардными оборотами тихо меняет фундамент своего продукта и никто этого не замечает? Именно это и случилось.
Тихая революция под капотом
В середине июня 2026 года Anthropic выпустила Claude Code версии 2.1.181. Никаких анонсов, никаких презентаций — просто апдейт. Но внутри него спряталась интересная деталь: код теперь работает на Bun (среда выполнения JavaScript — альтернатива Node.js, которая работает быстрее) — среде выполнения JavaScript, которая сама недавно переписана на Rust (язык программирования, известный своей безопасностью — компилятор ловит ошибки работы с памятью ещё до запуска кода).
Через несколько недель Jarred Sumner (создатель Bun) раскрыл карты: да, это тот самый Rust-порт. Да, запуск на Linux стал быстрее на 10 процентов. И да, почти никто этого не заметил.
Что самое забавное — Саймон Виллисон решил проверить это сам. И нашёл.
Как убедиться, что это правда
Оказывается, есть как минимум два способа докопаться до истины, если у вас установлен Claude Code.
Первый — посмотреть строки внутри бинарника (скомпилированная программа — готовый исполняемый файл, который можно запустить):
strings ~/.local/bin/claude | grep -m1 'Bun v1'
У Саймона этот запрос вернул `Bun v1.4.0` для macOS ARM64 (архитектура процессора — используется в Mac с чипом M-серии и большинстве смартфонов). Проблема: на тот момент последняя стабильная версия Bun в репозитории была 1.3.14 от 12 мая. Версия 1.4.0 ещё даже не вышла. Это означает, что Anthropic уже поставляют превью-версию Bun, которая станет публичной только в будущем.
Второй способ — поискать внутри бинарника ссылки на Rust-файлы:
strings ~/.local/bin/claude | grep -Eo 'src/[[:alnum:]_./-]+\.rs'
Результат: 563 имени файлов. Вот несколько из них:
src/runtime/bake/dev_server/mod.rs src/runtime/bake/production.rs src/bundler/bundle_v2.rs
Если вам кажется, что это много — да, это много. Это сотни тысяч строк кода на Rust, которые теперь работают внутри Claude Code на миллионах устройств.
Почему это вообще важно
Bun — это альтернатива Node.js (среда выполнения JavaScript — «движок», который позволяет запускать JS-код на сервере, а не только в браузере). Создатели Bun хвастались скоростью с самого начала, но настоящий фокус был в другом: они хотели переписать core-часть на Rust, чтобы получить безопасность памяти без потери производительности.
CLAUDE CODE STACK ──────────────── ┌─────────────────────────────────────────────┐ │ Claude Code (ваш интерфейс) │ ├─────────────────────────────────────────────┤ │ Bun Runtime (исполнение JS/TS) │◀── Rust-порт ├─────────────────────────────────────────────┤ │ Rust Core (io, парсинг, сеть) │ └─────────────────────────────────────────────┘ БЫЛО: СТАЛО: ┌─────────┐ ┌─────────┐ │ Node.js │ │ Bun/Rust│ │ (C++) │ ──▶ замена ──▶ │ (Rust) │ └─────────┘ └─────────┘ 10% медленнее 10% быстрее
Переход на Rust даёт несколько преимуществ:
Скорость. Не 10x, не 2x — но 10 процентов на старте. Это означает, что когда вы открываете Claude Code, он быстрее поднимается, быстрее подключается к API (способ, которым программы «разговаривают» друг с другом — как розетка и вилка), быстрее начинает работу.
Стабильность. Rust известен своей системой безопасности памяти на уровне компилятора. Это значит меньше segfault-ов (сегфолт — критический сбой программы, когда она пытается обратиться к «чужой» памяти), меньше утечек памяти, меньше неожиданного поведения.
Будущее. Anthropic явно готовятся к чему-то большему. Загрузка невыпущенной версии Bun — это не случайность. Это как минимум доверие к проекту, а как максимум — желание влиять на его развитие.
Что это говорит о рынке AI-инструментов
Виллисон в конце своей заметки приводит слова Sumner: «Скучно — это хорошо» (Boring is good). И это, пожалуй, главный вывод из всей этой истории.
Мы привыкли к хайпу: новые модели, новые фреймворки, новые подходы. Но настоящая инженерия — это часто именно про выбор скучных, надёжных решений, которые просто работают.
Bun на Rust — это не сексуально. Это не привлечёт внимание на конференции. Но это делает Claude Code быстрее, стабильнее и лучше подготовленным к масштабированию.
ЖИЗНЕННЫЙ ЦИКЛ БОЛЬШИХ РЕШЕНИЙ
───────────────────────────────
▲
│
┌──────┴──────┐
│ СКУЧНО │ ← Выбрано
├─────────────┤
│ РАБОТАЕТ │ ← Реализовано
├─────────────┤
│ НИКТО НЕ │ ← Замечено?
│ ЗАМЕТИЛ │
├─────────────┤
│ +10% скорости│ ← Бенефит
└─────────────┘
│
▼
"Boring is good"
Моя оценка
Вот что меня зацепило в этой истории: Anthropic не стали писать собственный runtime (среда выполнения — «движок», который запускает и исполняет код) с нуля. Они взяли готовый инструмент (Bun), дождались, пока его перепишут на Rust, и встроили его в свой продукт.
Это прагматизм высшего уровня.
Вместо того чтобы нанимать команду под конкретную задачу, они:
- Выбрали open-source (открытый исходный код — когда код проекта публично доступен, и любой может его изучить или предложить изменения) решение (Bun)
- Подождали, пока оно дозреет до нужного уровня
- Внедрили с минимальным шумом
- Получили результат
Для нас, пользователей, это значит две вещи. Первая: Claude Code будет работать быстрее без каких-либо наших действий. Вторая: экосистема AI-инструментов взрослеет и начинает опираться на инфраструктуру, которая работает стабильно, а не на хайповые прототипы.
«Скучно — это хорошо» — сказал Sumner. Я бы добавил: «Скучно — это профессионально».
Ссылки
- Статья Саймона Виллисона — первоисточник, где описана процедура проверки и найденные артефакты
- Bun на GitHub — репозиторий проекта
- Bun Canary — превью-версия 1.4.0, которая уже работает у пользователей Claude Code
Дмитрий Полухин — продуктовый дизайнер. Пишу про разработку, AI и дизайн интерфейсов. Обо мне, контакты и профили.