u/Legitimate_Put3512

▲ 92 r/brdev

[OC] Criei um assistente de IA em Electron que fica invisível para o OBS/Zoom (inspirado no Perssua)

Fala galera.

Nas últimas semanas eu construí o Hades-Agent para resolver um problema pessoal: eu queria usar um assistente de IA enquanto compartilho tela no Teams/Discord, sem que o cliente ou time visse as minhas perguntas ou o contexto.

Vi o projeto Perssua (do Lucas Montano) e a ideia me fisgou na hora, então decidi tentar construir a minha própria versão Open Source focada 100% no uso Desktop.

Queria compartilhar como resolvi alguns dos desafios técnicos caso alguém esteja estudando essas APIs ou queira fazer algo parecido.


1. O Desafio da Invisibilidade

Para fazer as janelas ficarem completamente invisíveis para softwares de captura (OBS, Discord, Zoom, prints), utilizei a API setContentProtection(true) do Electron (no Windows). Por baixo dos panos, isso aciona a função SetWindowDisplayAffinity do SO com a flag WDA_MONITOR.

O resultado é que o agente só aparece para quem está na frente do monitor físico. Quem está assistindo o screen share só vê a janela que está atrás do app.

2. Streaming de Áudio em Tempo Real

A feature de transcrição de áudio do PC (para transcrever aulas ou reuniões) foi a parte mais chata. Em vez de gravar um chunk de áudio, processar e devolver, o app faz streaming de áudio raw (16kHz PCM) via WebSocket full-duplex direto para a nova Gemini Live API.

O fato de não ter transcrição intermediária derrubou a latência para menos de 100ms.

3. Arquitetura Sandboxed e Segurança

Como IA executando código na máquina local é um perigo, deixei a arquitetura bem restrita:

  • O frontend (React 19) roda num Sandbox rígido (sem nodeIntegration).
  • A comunicação entre o UI e o sistema operacional passa por uma IPC Event Bridge que filtra tudo.
  • O histórico (memória e tarefas) é armazenado num JSON local criptografado com AES-256. A IA não tem permissão de escrita/deleção no sistema.

4. Busca rápida (Grounding)

Usei a Tavily Search API para conectar a barra de comandos (estilo o Spotlight do Mac) direto com a web, para evitar que a IA invente coisas.


Deixei o código todo aberto lá no GitHub. Se você quiser testar na sua máquina, vai precisar gerar suas próprias API Keys gratuitas (Gemini e Tavily).

👉 Repositório: https://github.com/euvictorldev/hades-agent

reddit.com
u/Legitimate_Put3512 — 1 day ago