VibeVM

org.vibevm.zap · локальное рабочее пространство агентов

Все агенты — на одной карте.

Zap — локальное рабочее пространство для параллельной работы кодовых агентов: проекты, переписка, вопросы, управляемые задачи и Git-worktree на одной навигируемой поверхности. Zap Wayfinder держит устойчивое состояние на вашей машине; Zap Quick Lens открывает его в браузере или Electron. Codex, Claude Code, OpenCode и Qwen Code подключаются с теми логинами, которые у вас уже есть.

Начать с vibeПочему VibeVM

Локальное превью

Проблема

Темнота между терминалами

Потерянный вопрос

Агент упирается в неоднозначность и спрашивает — в терминал, который прокрутился час назад. В Zap вопрос — устойчивый объект: он ждёт ответа, отмены или истечения срока, а переписка тем временем продолжается.

Общий checkout

Две задачи в одном рабочем дереве заканчиваются затёртыми правками. Zap готовит корневой worktree на каждый план и изолированные дочерние worktree на управляемые задачи — возобновление возвращает в тот же worktree, незакоммиченные правки целы.

Exit 0 — и что дальше?

Чистый код выхода говорит, что процесс завершился, а не что работа верна. Zap записывает выход процесса, типизированный отчёт и вашу приёмку как три отдельные записи — успех не перепрыгивает ревью.

Что такое Zap

Движок планирования с вьюером — а не обёртка

Zap поставляется двумя пакетами одной дисциплины. Rust-движок — flow:org.vibevm.zap/zap — ведёт одну типизированную устойчивую историю: намерения, обязательства, неопределённость, решения, lowering, пакеты для агентов, исполнение, свидетельства, удержания, восстановление. Клиент — tool:org.vibevm.zap/lens — это Zap Wayfinder, локальный сервис-владелец состояния, и Zap Quick Lens, вьюер, который его отрисовывает. Координатор может перестраивать маршрут внутри конверта, заданного владельцем, а перед каждым живым эффектом стоят шлюзы полномочий и экономики.

Два раздельных канала: агенты аутентифицируются на точный scope рабочего пространства, а вход в UI не даёт агентских полномочий. Всё слушает loopback. Открытие и закрытие вьюера не запускает и не останавливает агентов.

Навигация

Карта, которая не угадывает

Рабочее пространство отрисовывает проекты регионами на одной карте с панорамированием и зумом, а у графа плана ровно два прочтения. Недостающие элементы, частичные связи и циклы пререквизитов показываются на графе, а не сглаживаются в правдоподобный порядок — и координаты не обещают длительность, которой источник не называл.

Goal structure — Декомпозиция, разложенная наружу от единственной активной цели, которую называет источник.
Work order — Шаги слева направо — только по проверенным пререквизитам. Внутри этапа порядок не выдумывается.

Возможности

Что это даёт

Вопросы переживают рестарты

Группы вопросов несут варианты, множественный выбор и свободный текст — с черновиками, отменой и историей поправок. В записанном приёмочном прогоне живой агент опубликовал вопрос, браузер ответил, агент прочитал ответ через ограниченный inbox и отправил типизированный отчёт — и после рестарта Wayfinder всё это осталось на месте.

Интеграция со шлюзом

Продвижение в основную ветку проходит через diff кандидата, зарегистрированные проверки и ревью человека под единственной writer-арендой. Конфликты становятся управляемой задачей разрешения. Автоматических stash, reset и force-push нет.

Маршрутизация, которую можно прочитать

Именованные конфигурации поверх ваших существующих аккаунтов, специализации задач и слайдер экономия/качество. Счётчики подписок показывают наблюдаемое значение: неизвестное остаётся неизвестным, а проценты никогда не превращаются в выдуманное число токенов.

Ничего не запускается неявно

Регистрация проекта не тратит ни одного вызова модели. Координатор стартует, когда вы нажимаете Start development. zap-server поднимает весь стек без окна — и без единого хода модели.

Доверие

Правила, которые Zap не нарушает

  • Завершённый процесс — не принятый результат.

    Выход, типизированный отчёт, приёмка — три разные записи.

  • Неизвестное остаётся неизвестным.

    Никаких выдуманных длительностей, порядков и чисел токенов.

  • Никаких демо-данных в живых видах.

    Недоступный источник планирования показан как недоступный.

  • Никакого бот-автора.

    Операции, создающие коммит, отказывают, пока не настроена ваша Git-идентичность.

  • Контролы говорят правду.

    UI показывает только то, что выбранный адаптер провайдера реально поддерживает.

Старт

От нуля до работающего координатора

  1. $vibe install -g org.vibevm.zap/zap

    Одно глобальное приложение через vibe. Нет vibe? Установите VibeVM →

  2. $zap-quicklens

    Переиспользует или запускает локального владельца Wayfinder и открывает парную сессию браузера. --electron — десктопная оболочка, zap-server — без окна.

  3. Подключите аккаунт, который у вас уже есть

    Codex, Claude Code, OpenCode или Qwen Code — Zap использует защищённый логин самого приложения. Он не создаёт аккаунты и не продаёт инференс.

  4. Добавьте проект и нажмите Start development

    Регистрация не тратит инференс. Первый ход модели происходит на Start — не раньше.

Где продукт сегодня

Zap — локальное превью: один человек, одна машина, журнал хранится целиком. Gamelens, IDE-клиенты и совместная работа нескольких людей названы будущими компонентами — это не функции текущего релиза. Авторитетные операции планирования требуют настроенного источника; ожидающий источник показан как ожидающий, а не симулируется.

В семье VibeVM

Движок также ставится в VibeVM-проект как flow-пакет, добавляя свои спецификации и три скилла — zap-draft, zap-state, zap-run. Установка ничего не активирует, пока вы не скажете.

Почему VibeVM →

Одним абзацем

Zap собирает проекты, переписку агентов, вопросы, управляемые задачи и Git-worktree на одной локальной карте. Вопросы переживают рестарты, интеграция проходит через ваше ревью, и ни один ход модели не тратится, пока вы не нажали Start. Локальное превью в семье VibeVM: vibe install -g org.vibevm.zap/zap.