Sobre o projeto

Devinorium é uma interface web auto-hospedada para agentes de codificação de IA, permitindo que os agentes sejam operados a partir de um navegador em vez de apenas por um terminal. Seu backend é escrito em Rust utilizando axum, tokio e SQLite, e gerencia autenticação, sessões, arquivos e as chamadas para os provedores. O frontend é Flutter web, produzido por um script de build e embutido no binário Rust em tempo de compilação a partir do diretório de saída do build do frontend. A camada de provedores é explicitamente plugável, o que significa que backends adicionais podem ser introduzidos sem alterar o restante da aplicação. Três provedores são listados como suportados: o Devin CLI, OpenCode e o Codex CLI. Espera-se que cada um esteja presente no PATH e autenticado previamente através de seu próprio comando de login (devin login, opencode auth login, codex login). Para começar, são necessários o toolchain Rust, o Flutter SDK e a CLI do provedor escolhido. Após a clonagem, o arquivo de ambiente de exemplo é copiado e editado para definir uma senha de bootstrap; o README alerta que, se esta senha não for definida ou for mantida no valor do placeholder, nenhuma conta de proprietário será criada e o login será impossível. O script de build do Flutter então produz o pacote do frontend, um cargo build de release o embuti, um diretório de dados é criado para o banco de dados e o binário é executado. O serviço então escuta na porta 7878 do localhost por padrão, onde o usuário faz login com as credenciais de bootstrap. A configuração é feita inteiramente através de variáveis de ambiente, documentadas no arquivo env de exemplo. As configurações abrangem o endereço e porta de bind, uma chave de sessão usada para assinar cookies de sessão (efêmera, a menos que um valor aleatório longo seja fornecido), a string de conexão SQLite, o nome de usuário e senha do proprietário na primeira execução, um modelo padrão para novas threads, a confiança em cabeçalhos forwarded-for atrás de um proxy reverso, um tamanho máximo de corpo de requisição, uma flag de cookie seguro para HTTPS e uma origem explicitamente permitida para verificações de CSRF. As migrações do banco de dados são executadas automaticamente na inicialização. O desenvolvimento inclui verificações de formatação, clippy com avisos negados e a suíte de testes; grupos de lint pedantic e nursery mais rigorosos são mencionados como um backlog para serem habilitados incrementalmente. O README afirma que o Devinorium serve apenas HTTP, portanto, a exposição remota ou pública deve ser feita através de um proxy reverso ou túnel que termine o TLS, com exemplos detalhados de implantação em um arquivo de documentação separado. O projeto é licenciado sob AGPL-3.0-only, e o repositório descrito é um espelho no GitHub de um projeto no GitLab. Capturas de tela na documentação mostram a interface no desktop e no mobile, incluindo a barra lateral e as visualizações de thread e editor de código.