Executando um Mensageiro com Agentes de IA no Seu Telefone: Exemplo octo-android
Na maioria dos chats corporativos, bots só conseguem enviar alertas de sistemas de monitoramento ou solicitar aprovações de pedidos de férias. Os desenvolvedores da Mininglamp-OSS decidiram ir além e criaram a plataforma OCTO. O conceito é direto: os gêmeos digitais lidam com tarefas rotineiras e raciocínio inicial, enquanto os humanos avaliam os resultados e tomam decisões.
O repositório octo-android é o cliente móvel oficial desta plataforma. Diferentemente da maioria dos mensageiros corporativos modernos, os autores não envolveram um aplicativo web em WebView. Temos à disposição um software nativo construído com Kotlin e Java.
O que torna a arquitetura e implementação interessantes
O cliente móvel é baseado no projeto TangSengDaoDaoAndroid e no motor de rede WuKongIM. O aplicativo se comunica com o backend via API REST e mantém uma conexão WebSocket persistente.
Aqui está do que o lado do cliente é composto:
- O módulo
wukong-sdklida com o transporte de mensagens em tempo real. - O armazenamento local é organizado usando Room DB. O histórico de chat e rascunhos não salvos em cache são salvos diretamente no dispositivo.
- Tokens de autorização são armazenados em EncryptedSharedPreferences seguros.
- Notificações em segundo plano chegam através do serviço padrão e Firebase Cloud Messaging.
A interface é construída seguindo as diretrizes do Material 3. Algumas telas são escritas em Jetpack Compose, enquanto outras usam layouts XML clássicos. Um pacote separado agent contém componentes para trabalhar com IA: rastreamento de status de geração, visualização de chamadas de ferramentas e visualização de respostas em modo streaming.
Como é construir e personalizar
Os desenvolvedores declaram um princípio local-first. Todos os dados pertencem ao usuário, e o backend octo-server em Go pode ser facilmente implantado em seu próprio servidor.
Se você quiser compilar o aplicativo a partir do código-fonte para as necessidades da sua empresa, será necessário completar uma lista de verificação obrigatória. O projeto é lançado sem segredos embutidos ou chaves de terceiros:
- Altere o
applicationIdpadrão decom.example.octopara o domínio da sua organização. - Crie um projeto no Firebase e adicione seu próprio
google-services.jsonà pasta do módulo. - Gere um keystore para assinar o build de release e configure-o no Gradle.
- Especifique o endereço da instância
octo-serverno arquivoconfig.xml.
Sem completar os três primeiros passos, o Gradle se recusará a compilar o arquivo final. Mas pelo menos não há backdoors de terceiros ou certificados de teste no código.
git clone https://github.com/Mininglamp-OSS/octo-android.git
cd octo-android
# Сборка отладочной версии через CLI
./gradlew :app:assembleDebug
# Установка на подключенное устройство
./gradlew :app:installDebug
Para uma introdução rápida, você não precisa compilar o projeto manualmente. Os autores publicam APKs prontos na seção Releases. Basta instalar o aplicativo no seu smartphone e inserir o endereço do servidor durante o login.
Ecossistema e protocolo unificado
O repositório octo-android por si só abre apenas parte do sistema geral. A lógica do servidor está em octo-server, o gerenciador de tarefas está separado em octo-matter, e o resumo automático de diálogos é tratado pelo serviço octo-smart-summary.
Todos os clientes — aplicativos móveis e a versão desktop em React — funcionam no mesmo protocolo e usam chaves de localização comuns. Isso simplifica a manutenção: a lógica do agente de IA ou a exibição de status de digitação não requerem reformulação separada para cada plataforma.
Para quem este projeto será útil
O repositório será útil para equipes que buscam um mensageiro aberto com capacidade de auto-hospedagem e suporte nativo a agentes LLM. O código-fonte octo-android também será útil para desenvolvedores Android. Aqui você pode ver a implementação da camada de transporte baseada em WuKongIM, organização de cache offline no Room e uma interface conveniente para respostas de streaming de redes neurais.
Projetos relacionados