Sobre el proyecto
Devinorium es una interfaz web autoalojada para agentes de codificación de IA, permitiendo que los agentes se controlen desde un navegador en lugar de solo desde una terminal. Su backend está escrito en Rust sobre axum, tokio y SQLite, y gestiona autenticación, sesiones, archivos y llamadas a proveedores. El frontend es Flutter web, generado por un script de compilación y embebido en el binario de Rust en tiempo de compilación desde el directorio de salida de la compilación del frontend.
La capa de proveedores es explícitamente extensible, lo que significa que se pueden introducir nuevos backends sin modificar el resto de la aplicación. Tres proveedores figuran como compatibles: Devin CLI, OpenCode y Codex CLI. Cada uno debe estar presente en PATH y haber sido autenticado previamente mediante su propio comando de inicio de sesión (devin login, opencode auth login, codex login).
Para empezar se requiere el toolchain de Rust, el SDK de Flutter y el CLI del proveedor elegido. Después de clonar, se copia y edita el archivo de entorno de ejemplo para configurar una contraseña de inicio; el README advierte que si esta contraseña no se establece o queda en su valor predeterminado, no se creará ninguna cuenta de propietario y el inicio de sesión será imposible. Luego el script de compilación de Flutter genera el bundle del frontend, una compilación release de cargo lo embebe, se crea un directorio de datos para la base de datos y se ejecuta el binario. El servicio escucha en localhost puerto 7878 de forma predeterminada, donde el usuario inicia sesión con las credenciales de inicio.
La configuración se realiza completamente mediante variables de entorno, documentadas en el archivo env de ejemplo. Las opciones cubren la dirección y puerto de enlace, una clave de sesión usada para firmar cookies de sesión (efímera a menos que se proporcione un valor largo y aleatorio), la cadena de conexión de SQLite, el nombre de usuario y contraseña del primer propietario, un modelo predeterminado para nuevos hilos, la confianza en cabeceras forwarded-for detrás de un proxy inverso, el tamaño máximo del cuerpo de la solicitud, una bandera de cookie segura para HTTPS y un origen explícitamente permitido para verificaciones CSRF. Las migraciones de la base de datos se ejecutan automáticamente al iniciar.
El desarrollo incluye comprobaciones de formato, clippy con warnings como errores, y el conjunto de pruebas; se mencionan grupos de lint más estrictos (pedantic y nursery) como pendientes para habilitar de forma incremental.
El README indica que Devinorium sirve HTTP únicamente, por lo que la exposición remota o pública debe realizarse a través de un proxy inverso o un túnel que termine TLS, con ejemplos detallados de despliegue en un archivo de documentación separado. El proyecto tiene licencia AGPL-3.0-only y el repositorio descrito es un mirror de GitHub de un proyecto GitLab. Las capturas de pantalla en la documentación muestran la interfaz en escritorio y móvil, incluyendo barras laterales, hilos y vistas del editor de código.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.