Платформа OpenVibe от разработчика nihmadev позиционируется как альтернатива облачным IDE для работы с AI-агентами. Ключевое отличие — полная локальность: все вычисления, хранение данных и управление процессами происходят на машине пользователя. Стек включает Rust (16 крэтов для бэкенда), Tauri (оболочка), React/TypeScript (фронтенд) и Monaco Editor (редактор кода). Проект распространяется под лицензией GPLv3.
Агентная архитектура и управление контекстом
OpenVibe использует нативный инкрементальный SSE-пайплайн для провайдеров в стиле OpenAI и Anthropic. Система поддерживает:
- Token-aware compaction: автоматическое сжатие истории чата с сохранением важных снимков файлов и состояния инструментов.
- Prompt caching: использование стабильных ключей кэширования для снижения задержек (TTT) и затрат токенов.
- Rollback и Diff-режим: каждое изменение файла агентом сохраняется в виде снимка «до/после». Пользователь может просмотреть изменения в Monaco, принять их, отклонить или откатить.
- Sub-agent research: возможность делегировать агенту задачи по исследованию кодовой базы с использованием изолированных инструментов.
Изолированный браузер и MCP
Встроенный модуль браузера работает через Chrome DevTools Protocol (CDP) в изолированном процессе Chromium. Агент может навигировать, кликать, заполнять формы и делать скриншоты, не влияя на основной браузер пользователя. Поддерживается ручное вмешательство пользователя в любой момент.
Система поддерживает MCP (Model Context Protocol) через stdio/JSON-RPC 2.0. Инструменты MCP динамически обнаруживаются и регистрируются как mcp__<server>__<tool>, что позволяет расширять функциональность без перезапуска приложения.
Технические характеристики и интеграции
Среда объединяет редактор, терминал (xterm.js), файловое дерево и Git-контроль в едином интерфейсе. Поддерживается LSP для популярных языков программирования. Архитектура разделена на три уровня: рендерер (React), хост Tauri и сервисы на Rust.
| Компонент | Технология/Детали | Функционал |
|---|---|---|
| Ядро | Rust (16 крэтов) | Управление агентами, LLM, браузером, файловой системой, Git (libgit2), терминалом |
| Оболочка | Tauri | Кроссплатформенная десктопная обертка (Linux, macOS, Windows) |
| React + TypeScript | 40 тем, 38 языков интерфейса, кастомизация шрифтов и анимаций | |
| Редактор | Monaco Editor | Многовкладочное редактирование, просмотр диффов, подсветка синтаксиса |
| Браузер | Chromium (CDP) | Изолированная сессия, навигация, доступность, скриншоты, ручное управление |
| LLM Провайдеры | OpenAI-compatible | Anthropic, OpenAI, Google Gemini, DeepSeek, Groq, Ollama, LM Studio, vLLM, AWS Bedrock |
Установка и запуск
Для разработки требуются Node.js >= 18 и стабильная версия Rust. Установка осуществляется через стандартные Git-команды:
git clone https://github.com/nihmadev/OpenVibe.git
cd OpenVibe
npm install
npm run dev
При запуске npm run dev запускается Vite-рендерер и Tauri-хост. Приложение автоматически подтягивает каталог моделей через models.dev и поддерживает кастомные эндпоинты с произвольными заголовками и ключами.
Источник: Github ↗
