
Oak: альтернатива Git для AI-агентов
Oak — новая система контроля версий, спроектированная специально для AI-агентов. Быстрее Git на 95% для агентных задач, публичная бета v0.99.0.
Oak: система контроля версий, спроектированная для эпохи AI-агентов
Oak — это система контроля версий (VCS), созданная специально под рабочие процессы AI-агентов. Git и GitHub используют модель, которая изначально не разрабатывалась под агентов. Авторы Oak решили не патчить существующие инструменты, а построить фундамент с нуля — вокруг того, как агенты реально работают с кодом.
Зачем это нужно
Git заставляет клонировать всю историю репозитория до того, как можно открыть хоть один файл. На большом репозитории это минуты простоя — токены тратятся на ожидание прогресс-бара ещё до начала какой-либо работы.
Большой бинарный файл — например, чекпоинт нейросети на 4 ГБ — просто ломает Git. LFS — это отдельная квота, дополнительная конфигурация и ещё одна точка отказа; при этом повторно загружается весь файл, даже если изменился один тензор.
.git-каталог, риск его повреждения, конфликты detached HEAD и состояния, которые «перетекают» между рабочими деревьями. Один сбой индекса — и все сессии встают.Как работает Oak
Модель хранения и ветвления Oak настроена на высокий объём веток, постоянные снапшоты, параллельные сессии и большие файлы. Три ключевые идеи:
- Branch-per-session — каждая агентная сессия получает собственную ветку
- Branch descriptions — описание ветки вместо сообщений к каждому коммиту
- Lazy mount (ленивое монтирование) — репозиторий монтируется без полного клонирования
Content-addressed storage (адресация по содержимому), content-defined chunking (разбивка на чанки по содержимому) и lazy mounts означают, что Oak никогда не перехеширует всё дерево и не передаёт данные, которые уже есть локально.
Архитектура: два крейта Rust
Oak написан на Rust и организован как Cargo workspace с двумя компонентами:
| Крейт | Путь | Назначение |
|---|---|---|
oakvcs-core | core/ | Фундамент VCS: BLAKE3-хеширование, content-defined chunking, diff/merge, модель данных Blob/Manifest/Commit/Tree, бэкенды SQLite и Git |
oakvcs-cli | cli/ | Бинарник oak, построенный поверх oakvcs-core |
graph TD
A[AI-агент
Claude / Codex / Cursor] --> B[oak CLI]
B --> C[oakvcs-core]
C --> D[BLAKE3 хеширование]
C --> E[Content-defined chunking]
C --> F[SQLite / Git бэкенд]
B --> G[Lazy mount / ProjFS]
B --> H[Branch-per-session]
Установка и совместимость
Oak находится в стадии публичной беты (v0.99.0). Установка на macOS и Linux — одной командой:
curl -fsSL oak.space/install | sh
Для Windows доступен отдельный исполняемый файл со страницы GitHub Releases, либо сборка через Cargo:
cargo install oakvcs-cli
Команда oak mount на Windows использует Projected File System (ProjFS) — опциональный компонент ОС. Его нужно включить один раз из PowerShell с правами администратора:
Enable-WindowsOptionalFeature -Online -FeatureName Client-ProjFS -NoRestart
Все остальные операции — clone, push, pull, commit — работают без ProjFS.
Для интеграции в сторонние инструменты oakvcs-core можно подключить как отдельную библиотеку без CLI-зависимостей:
[dependencies]
oakvcs-core = { version = "0.99.0", default-features = false }
Oak vs Git: сравнение подходов
| Аспект | Git | Oak |
|---|---|---|
| Клонирование | Полная история до первого файла | Lazy mount, файлы загружаются по запросу |
| Параллельные агенты | Общий .git, риск коррупции | Изолированная ветка и mount для каждой сессии |
| Большие файлы | LFS — отдельная квота и конфиг | Нативный chunking + дедупликация |
| Сообщения к коммитам | Обязательны для каждого коммита | Описание ветки, коммиты без сообщений |
| Хеширование | SHA-1/SHA-256 | BLAKE3 (быстрее, криптостойкий) |
| Лицензия | GPL-2.0 | Apache-2.0 |
Контекст: VCS-ренессанс 2026 года
В 2026 году ландшафт систем контроля версий сместился от простого хостинга кода к Autonomous DevOps, где AI-агенты и Git-платформы неразрывно связаны. На этом фоне появляется сразу несколько альтернатив Git: Lore от Epic Games — централизованная VCS с адресацией по содержимому, Jujutsu от Google и теперь Oak.
«Версионный контроль на скорости агентов» — так авторы Oak формулируют свою миссию. Не надстройка над Git, а новый фундамент.
Git превосходно справляется с тем, для чего был создан: люди делают осознанные изменения, проверяют патчи и сохраняют распределённую историю, способную пережить десятилетия. Oak не претендует на замену Git в этих сценариях — вы приносите своего агента (Claude Code, Codex, Cursor), Oak — это VCS под ним.
# Смонтировать репо без полного клона
oak mount oak/myproject
# Создать ветку для сессии агента
oak switch -c feat/refactor-auth
# Добавить описание ветки (вместо сообщений коммитов)
oak desc "Replace REST auth with OAuth + PKCE"
# Слить в main одним squash-коммитом
oak mergesquash
Проект распространяется под лицензией Apache-2.0, репозиторий открыт на oak.space/oak/oak. Примечательно, что сам репозиторий Oak разрабатывается с жёсткими правилами для агентов: они не должны мутировать канонические чекауты или оставлять локальные чекпоинты невидимыми для ревьюеров — Oak ест собственную еду.