Что такое VibeVM
01Агент-кодер начинает каждую сессию, ничего не зная о вашем проекте. VibeVM лечит это так же, как менеджер пакетов лечит недостающие библиотеки: вы называете, чему следует проект, и агент получает точный текст для чтения в начале каждой сессии. Текст приходит из пакетов, поэтому команда, компания или сообщество могут делить его и улучшать в одном месте.
Какую задачу он решает
03В любом серьёзном проекте есть правила, которые никогда не попадают в код: как коммитить, что проверять перед пушем, какие слова что значат, как описывать фичу до того, как она сделана. Люди узнают эти правила, работая вместе. Агенту так не везёт. Он читает файл, который случайно оказался открыт, или написанную от руки инструкцию, которая с каждой неделей чуть дальше отходит от реальности.
04VibeVM считает такой текст с инструкциями зависимостью. Проект объявляет в небольшом файле-манифесте, каким наборам правил он следует, и vibe собирает из них текст, который агент читает первым. Когда набор правил становится лучше, проект обновляет его, как любую другую зависимость. Когда два проекта следуют одному набору, они получают один и тот же текст из одного источника.
Как это работает
05Единица, которую vibe устанавливает, — пакет: папка с коротким манифестом и тем текстом или инструментами, которые она приносит. У пакета есть координата из группы и имени, например org.vibevm.world/wal, и версия. Пакеты живут в реестре; по умолчанию это публичная организация на GitHub, по репозиторию на пакет. Чтобы читать из него, аккаунт не нужен.
06Проект — любая папка с манифестом по имени vibe.toml. Манифест перечисляет пакеты, которые проекту нужны. Когда вы запускаете vibe install, vibe подбирает версии, один раз скачивает пакеты в хранилище на вашей машине и копирует их в проект. Потом он записывает две вещи: лок-файл, в котором точно сказано, что пришло, и стартовую полосу — упорядоченный список чтения, по которому агент идёт в начале сессии.
07Чтобы начать, агент никогда не запускает vibe. Он читает файлы. Первый файл — короткий блок в конце вашего CLAUDE.md, AGENTS.md или GEMINI.md, который указывает на полосу; полоса называет остальное. В этом весь фокус, и он нарочно скучный: любой агент, умеющий читать файл, справится.
08 Boot remains pure file-reading — the redirect never becomes "runvibe", preserving the zero-dependency cross-agent property ofVIBEVM-SPEC.md§6.1.
09Установка пакета никогда не правит текст, который вы написали сами. Ваши правила живут в одном дереве, копии, пришедшие с пакетами, — в другом, и vibe пишет только во второе. Это основное правило модели загрузки, и всё остальное на этом сайте следует из него.
10
The owner's hard constraint: installing a dependency must never modify any node's authored spec — the C++ rule that you do not paste a header's text into your #include.
Чем он не является
11VibeVM — не агент, и внутри него нет модели. Он не пишет код, сам не разговаривает с языковой моделью и не заменяет редактор. Он готовит то, что агент читает, а позже, когда проект подрастёт, выполняет шаги сборки, которые проект объявил. Какого агента взять — ваш выбор; один и тот же проект одинаково стартует в Claude Code, Codex, OpenCode и Cursor.
12Это и не вики. Текст, который собирает vibe, должен быть коротким, устойчивым и дешёвым для чтения на каждом старте сессии. Длинные объяснения — дело документации, такой как это руководство, которое агент открывает, только когда оно нужно. Текст стоит токенов, и vibe построен вокруг этой цены.
13 Every architectural choice in VibeVM is evaluated against its token cost to the user. A feature, a format, a process step, a default — each answers: what does this make the user pay, per session and per agent? A cheaper-by-construction design beats a cheaper-by-discipline one (a law the machinery enforces beats a convention a session remembers). This PROP is the roof; the mechanisms of §4 are the rooms already built under it.
Куда дальше
14Чтобы увидеть всё на своей машине, установите vibe и создайте первый проект: маршрут новичка проходит и то и другое за десять минут. Чтобы понять устройство, читайте страницы о двух деревьях, стартовой полосе и пакетах, именно в этом порядке.
Лицензия
15vibe — открытый исходный код под Universal Permissive License 1.0. Лицензия покрывает то, что поставляет этот репозиторий: программу и пакеты в его собственных группах; у пакета, который вы пишете или ставите, лицензия своя.
16 Decision: vibevm ships under the Universal Permissive License 1.0 (UPL-1.0) — open source, relicensed 2026-07-12. SeeLICENSE.mdat the repo root for the terms. The scope is this repository's shipped surface — the host tree and everypackages/org.vibevm.*package; separately-developed products carry their own licences and are not governed here. The project's first phase shipped under a placeholder proprietary EULA; that phase is over.