Sobre el proyecto

Vibex es un banco de trabajo nativo y local-first para el desarrollo de software impulsado por agentes, construido en Rust con el framework de UI GPUI y lanzado bajo la licencia AGPL-3.0-or-later (estado actual 0.1.0-rc.2). El principio establecido del proyecto es que el entorno de ejecución de escritorio posee la autoridad: los procesos de los agentes, el historial de sesiones, los archivos del espacio de trabajo, Git, los PTY, los proveedores y los permisos residen en la máquina que el usuario elija. No se requiere un espacio de trabajo alojado para ejecutar el escritorio local, y el repositorio, las credenciales y el estado duradero de la sesión permanecen locales. La integración de agentes se basa en el Agent Client Protocol (ACP), que el proyecto describe como su único transporte de agentes en línea, por lo que cualquier agente compatible con ACP puede conectarse registrando un ejecutable con su comando, argumentos, entorno y metadatos de visualización. Se enumeran ajustes preestablecidos integrados para Claude Code, Codex, ZCode y OpenCode, y el catálogo de ACP nombra adicionalmente a Antigravity, Cline, Codebuddy Code, Cursor, Gemini CLI, GitHub Copilot, Devin, Grok, Hermes, Kimi Code, Pi y DeepSeek Harness, cuya disponibilidad se verifica mediante el entorno de ejecución instalado, la configuración del proveedor y sondas de capacidad en vivo. Las características del flujo de trabajo documentadas incluyen sesiones de agentes representadas como una línea de tiempo estructurada con Markdown, razonamiento, planes, detalles de herramientas y procesos, adjuntos, aprobaciones y formularios de elicitación tipados, además de funciones para detener, continuar, bifurcar, renombrar y reanudar, e importar historiales locales compatibles. Un árbol de archivos con alcance de espacio de trabajo permite la navegación, búsqueda de nombres/contenido, lecturas y escrituras con verificación de revisión, y manejo explícito de codificación, finales de línea y archivos grandes. El soporte de Git cubre estado, historial, diffs y blame, creación y cambio de ramas, staging, unstaging, revert, commit, fetch y push, así como worktrees aislados con recuperación guardada de merge y rebase. Los PTY nativos proporcionan emulación ANSI, pestañas, redimensionamiento, scrollback, búsqueda y manejo de bytes brutos, y el banco de trabajo previsualiza Markdown, imágenes, PDFs y documentos de Office compatibles. Un centro de configuración gestiona los entornos de ejecución de agentes, la selección de modelos y razonamiento, la autenticación de proveedores, sondas de salud y servidores MCP, Skills, Prompts y Hooks con alcance definido. La automatización puede programar ejecuciones de agentes únicas, por intervalo o diarias y componer grafos de automatización con estado de ejecución, recuperación e historial de auditoría. Las notificaciones de escritorio rastrean sesiones completadas, fallidas o bloqueadas por entrada, y el estado de la línea de tiempo está diseñado para sobrevivir a reconexiones y reinicios. Se describen tres superficies nativas. La aplicación de escritorio es el banco de trabajo GPUI completo y el DesktopRuntime autoritativo para Linux, macOS y Windows. El compañero móvil es un cliente nativo de GPUI para iOS y Android que representa el modelo de sesión de escritorio como una línea de tiempo y envía mutaciones remotas tipadas; no inicia agentes locales, no posee un sistema de archivos de espacio de trabajo, no muta Git local ni se convierte en una segunda autoridad de PTY. El relay autohospedado opcional es un servicio de Rust/Axum que reenvía tramas de WebSocket cifradas y no almacena datos de espacio de trabajo, proveedor, agente o aplicación; el emparejamiento también puede utilizar rutas Direct o Tailnet. Arquitectónicamente, el entorno de ejecución se divide en crates: core para IDs serializados, DTOs, errores, capacidades y contratos de protocolo remoto; desktop-model para proyecciones de sesión y línea de tiempo neutrales al framework; vibex-backend para fachadas de capacidad neutrales al proveedor; vibex-ui para tokens semánticos y modelos de componentes; y vibex-remote-client para emparejamiento, reconexión, sincronización y selección de rutas. El stack incluye el esquema ACP 1.6, Tokio, SQLite vía rusqlite, xpty y alacritty_terminal, PDFium, y Rustls con X25519, HKDF, HMAC y ChaCha20-Poly1305 para el transporte. El desarrollo requiere Git con submódulos, Node.js 22, pnpm 11.3.0, Rust 1.97.0 fijado por rust-toolchain.toml y un controlador Vulkan funcional; las ejecuciones de escritorio comienzan con pnpm dev:desktop, y las compilaciones móviles necesitan el Android SDK/NDK con cargo-ndk o macOS con Xcode y XcodeGen. Las puertas del repositorio incluyen pnpm check, pnpm release:build-smoke y pnpm check:mobile-native. Las notas de privacidad indican que los permisos están restringidos por capacidades y son auditables, la configuración de inicio del proveedor no se reescribe por defecto, y los tokens, claves privadas, prompts, contenidos de archivos y bytes de terminal están excluidos de los registros y artefactos de diagnóstico.