Um Assistente de IA Discreto Bem no Topo da Sua Tela
Recentemente encontrei um projeto open-source interessante chamado cue. É uma pequena aplicação que flutua como uma janela semi-transparente sobre todos os outros programas, ouve chamadas, observa sua tela e fornece dicas em tempo real. A parte mais interessante aqui nem é a integração com LLM, mas como o utilitário se esconde do compartilhamento de tela no Zoom, Google Meet ou Teams.
Se você já viu serviços pagos como Cluely ou Interview Coder, o conceito será familiar. O desenvolvedor do cue decidiu criar uma alternativa gratuita e open-source (licença GPL-3.0) onde você pode inserir sua própria chave de API e dispensar assinaturas de terceiros.
Como funciona este assistente
A aplicação divide as informações recebidas em três fluxos independentes.
Primeiro fluxo — sua tela. O utilitário captura uma imagem quando você pressiona uma tecla de atalho ou envia uma solicitação.
Segundo fluxo — seu microfone. O cue ouve a voz do dono do computador e transcreve a fala em texto.
Terceiro fluxo — áudio do sistema (o que os outros participantes estão dizendo pelos seus fones de ouvido). No Windows, a captura de áudio do sistema funciona via loopback sem configuração adicional. No macOS a partir da versão 14.4, usa ScreenCaptureKit através de flags do Chromium.
Os canais do participante e do usuário são processados separadamente, então o modelo sabe exatamente quem disse cada linha. Depois o contexto é enviado ao modelo de linguagem escolhido, e a resposta é exibida palavra por palavra diretamente na janela flutuante.
O que o cue pode fazer
A interface parece um painel de vidro compacto. O espaço ao redor é clicável, então não interfere ao pressionar botões no seu editor de código ou navegador.
Aqui estão os principais cenários de uso:
- Quebrando tarefas na tela. Você pressiona uma combinação de teclas (Ctrl+H no Windows ou Cmd+H no macOS por padrão), e o app captura a tela com código ou descrição da tarefa e mostra os passos da solução, código funcional e estimativas de complexidade de tempo e espaço.
- Dicas de diálogo em tempo real. O botão "O que devo dizer?" analisa as últimas linhas da outra pessoa e sugere uma resposta lógica.
- Resumos e perguntas. Você pode pressionar um botão para resumir a conversa ou gerar perguntas esclarecedoras sobre o tema.
- Resposta a perguntas em formato livre. Você pode digitar qualquer pergunta no campo de entrada, combinando a captura de tela da janela aberta e o histórico recente da discussão.
As configurações incluem um campo de currículo. Você pode colar seu histórico profissional lá, e o assistente usará experiência real ao responder perguntas difíceis.
Transcrição local e seleção de modelo
O projeto segue o conceito Bring Your Own Key (BYOK). O autor não tem servidores, não há telemetria e as chaves são armazenadas localmente no arquivo cue-data.json.
Os provedores suportados incluem OpenAI, Anthropic Claude, Google Gemini, Azure AI Foundry, bem como qualquer endpoint local ou personalizado compatível com OpenAI Chat Completions (por exemplo, Ollama ou vLLM).
Se você não quiser enviar o fluxo de áudio para a nuvem, pode alternar a transcrição de fala para whisper.cpp. Nas configurações de áudio, você seleciona o modo local e baixa o modelo necessário, do base base.en para variantes multilíngues e quantizadas. A aplicação inicia um processo local whisper-server em uma porta temporária e coloca o áudio em fila através dele. Os dados de áudio não são gravados em disco, permanecendo apenas na RAM.
Como a janela permanece invisível durante o compartilhamento de tela
O detalhe técnico mais interessante do cue é sua proteção contra aparecer em capturas de tela e transmissões. Não é um truque de placa gráfica ou um hack de transparência.
Dentro do Electron, o método setContentProtection(true) é chamado, que acessa diretamente mecanismos de nível de sistema do sistema operacional:
- No Windows, a chamada
SetWindowDisplayAffinityé usada com o flagWDA_EXCLUDEFROMCAPTURE. O gerenciador de janelas do Windows (DWM) simplesmente exclui a janela de todos os fluxos de captura. Em versões mais antigas do Windows 10 (antes de 2004), isso resultava em um retângulo preto, mas em versões mais recentes a janela fica completamente invisível para captura. - No macOS, o flag
NSWindowSharingNoneé definido. Ele diz ao servidor de janelas para ocultar a janela das transmissões. No entanto, a partir do macOS 15.4, a Apple mudou ligeiramente o comportamento da API, então em versões recentes, 100% de invisibilidade não é garantida.
Há uma nuance para o Zoom. Nas configurações do cliente, você precisa habilitar o modo avançado com filtragem de janela:
Sem esta caixa de seleção, o Zoom tenta capturar a tela bruta ignorando os filtros de privacidade da janela. Para Google Meet e Microsoft Teams, nenhuma configuração adicional é necessária — eles respeitam os flags do sistema por padrão.
Instalação e execução
A maneira mais fácil é pegar um binário pronto na página de releases do repositório. Builds estão disponíveis para Windows x64 e macOS em processadores Apple Silicon.
Se você quiser compilar o projeto a partir do código-fonte, precisará do Node.js versão 22.12 ou mais recente. A compilação não requer toolchains nativas pesadas, pois o autor intencionalmente escreveu o cliente em HTML, CSS e JS puro sem frameworks extras:
git clone https://github.com/Blueturboguy07/cue.git
cd cue
npm install
npm start
Se você planeja usar Whisper local a partir do código-fonte, precisa preparar os binários antes do primeiro lançamento:
npm run prepare:whisper
Após iniciar a aplicação, você precisará conceder permissões de microfone e gravação de tela (no macOS), depois colar sua chave de API nas configurações.
Em resumo
cue é um exemplo claro de como recursos padrão do Electron e APIs do sistema podem ser combinados para construir um companheiro útil para chamadas, brainstorming ou resolução de problemas técnicos. O código no repositório é compacto e bem legível, então o projeto também é ótimo para quem quer entender captura de fluxo de áudio e controle de visibilidade de janelas em aplicações desktop.
Projetos relacionados