Pular para o conteúdo
Igor FerreiraVoltar ao laboratório

VIX:assistente de voz para rotinas de escritório

Você fala, um modelo planeja, o código preenche. Um personagem 3D que vive na área de trabalho e preenche um formulário web campo a campo, na sua frente.

Trecho do vídeo, sem som
Papel
Autor, da concepção à validação, com agentes de IA escrevendo o código
Período
ago e out/2026
Situação
em andamento
  • LLMs e agentes
  • Gemini Live API
  • Gemini (saída estruturada)
  • Playwright
  • Python
  • Node.js
  • Electron
  • Three.js
  • C#

Compreensão simples

O problema

Todo dia, quem trabalha em várias frentes precisa lançar as horas num formulário: o dia, como ele foi e, para cada trecho de trabalho, a hora de começo, a de fim, códigos escolhidos em listas com centenas de opções e uma descrição do que foi feito.

No fim de um dia cansativo, a pessoa já não lembra direito o que fez de manhã. Preenche de memória e resume demais. Quem confere as horas depois recebe um registro curto e não entende o que foi feito.

O que faz

  1. Escuta quando você pede

    Você aperta uma tecla e conta o seu dia do seu jeito, como contaria a um colega.

  2. Preenche na sua frente

    Ele abre o formulário numa janela só dele e preenche campo por campo. Dá para ver cada letra entrando.

  3. Pergunta o que falta

    Faltou um horário, ou o código que você disse não existe? Ele pergunta em voz alta, em vez de adivinhar.

  4. Só envia quando você manda

    No fim, ele pergunta “Quer que eu envie?” e só envia quando você diz “pode enviar”.

Na tela

No comercial do VIX, o mesmo jeito num pedido de férias, com dados inventados.

O VIX, um robô de capacete com rosto de tela, em três estados lado a lado.
Ouvindo, pensando e falando. O rosto e a luz mostram o que ele está fazendo. Render do personagem.
1. Ouve. O que ele já entendeu aparece enquanto você fala. Quadro do comercial, com dados inventados.
2. Preenche. Campo a campo, letra a letra, à vista. Quadro do comercial, com dados inventados.
3. Pergunta. Falta um dado obrigatório? Ele pergunta, em vez de adivinhar. Quadro do comercial, com dados inventados.
4. Confirma. Tudo preenchido, ele pergunta antes de enviar e só envia com “pode enviar”. Quadro do comercial, com dados inventados.
A bolha sobre o VIX mostra a frase que ele está ouvindo, e o botão do microfone está aceso.

Toque fora da imagem para fechar.

Uma solicitação de férias com três campos preenchidos e o VIX preenchendo o campo Fim.

Toque fora da imagem para fechar.

O campo de aprovação está vazio e marcado, e a bolha do VIX pergunta quem aprova.

Toque fora da imagem para fechar.

O formulário completo e a bolha do VIX perguntando se pode enviar.

Toque fora da imagem para fechar.

O que muda

Antes
7,2 s
Depois
4,3 s
Por frase, do fim da fala até o formulário preenchido: antes e depois dos ajustes, nos testes com dados inventados.

Lançar o dia passa a ser uma conversa curta, em vez de procurar códigos em listas longas no fim do expediente.

Quem confere as horas recebe o dia completo, com o que a pessoa contou, e não um resumo apressado.

E o mesmo jeito pode servir para qualquer formulário repetitivo do dia a dia: a pessoa fala, ele preenche à vista e pergunta o que falta.

Compreensão técnica

Problema, otimização e resultado

Problema
Lançamento diário de horas num formulário web: por dia, a situação e vários blocos de atividade, cada um com início, fim, centro de custo, ordem de serviço e atividade escolhidos em listas longas, e uma descrição. No fim do dia, o registro sai resumido e difícil de conferir.
Otimização
Fala por tecla, transcrição ao vivo e um plano em JSON por fala: o modelo planeja. Um executor em código, com três travas, preenche à vista pelo Playwright e relê a tela antes de responder: o código age.
Resultado
Numa cópia local do formulário, com dados inventados: o plano começa 0,57 s depois do fim da fala (eram 3,55 s), uma fala completa leva 4,3 s até o formulário preenchido, e 19 de 19 cenários passaram por texto. Medido em 15 e 19/10/2026.

A anatomia de uma fala

Do fim da sua fala ao formulário preenchido, na escala do tempo. Cada marca abre como foi medido.

0 s1 s2 s3 s4 s

19 de 19cenários de conversa aprovados, cada um conferido campo a campo na tela e no banco de teste.

0,32 s

Mediana do fim da fala até o texto pronto, em 68 falas; o pior caso foi 0,7 s. Numa cópia local de teste do formulário, com dados inventados e falas sintetizadas, em 15/10/2026.

0,57 s

Mediana do fim da fala até o começo do plano, em 65 falas; 58 delas abaixo de 1 s.

antes da transcrição ao vivo: 3,1 s e 3,55 s

A mesma bateria, mandando o áudio inteiro depois da fala: 3,1 s até o texto e 3,55 s até o plano. A transcrição ao vivo cortou a espera do texto em cerca de dez vezes.

4,3 s

Mediana de uma fala completa, até o formulário preenchido: 12 turnos em 19/10/2026, de 1,4 a 13,6 s. Em 15/10, antes dos ajustes, eram 7,2 s.

19 de 19

Por texto, em 15/10/2026, e mais 5 de 5 dos recursos de 19/10. Cada cenário é um roteiro de falas: contar o dia, copiar o anterior, corrigir, perguntar o que falta e enviar com ordem.

O que o VIX faz hoje

  • Ouve quando você manda. Uma tecla de atalho (F9), em qualquer programa, ou um clique nele. A fala termina com a mesma tecla ou com 2 segundos de silêncio.
  • Entende enquanto você fala. O texto aparece na bolha antes de você terminar.
  • Preenche à vista. Numa janela de navegador só dele, com cliques e teclas, como uma pessoa faria.
  • Pergunta em vez de adivinhar. Falta um horário, um código não existe, falta quem autorizou: ele pergunta e sugere os mais parecidos.
  • Só envia com ordem. Depois de preencher, pergunta “Quer que eu envie?” e só envia com “pode enviar”.
  • Lembra o dia inteiro. Você conta as demandas aos poucos (“Anotado: reunião sobre o projeto.”) e, no fim, “fecha o dia” monta um rascunho com os horários do computador e pergunta “Lanço assim?”.
  • Corrige e copia. “Igual a ontem” copia o dia anterior e ajusta só o que você disse; “corrige: cheguei às oito e meia” muda o que já foi lançado; “o que falta lançar?” lista os dias em aberto.

Ele responde em voz alta e por escrito, na bolha sobre a cabeça.

Na tela

O VIX, um robô de capacete com rosto de tela, em três estados lado a lado.
Ouvindo, pensando e falando. O rosto e a luz mostram o que ele está fazendo. Render do personagem.
1. Ouve. O que ele já entendeu aparece enquanto você fala. Quadro do comercial, com dados inventados.
2. Preenche. Campo a campo, letra a letra, à vista. Quadro do comercial, com dados inventados.
3. Pergunta. Falta um dado obrigatório? Ele pergunta, em vez de adivinhar. Quadro do comercial, com dados inventados.
4. Confirma. Tudo preenchido, ele pergunta antes de enviar e só envia com “pode enviar”. Quadro do comercial, com dados inventados.
A bolha sobre o VIX mostra a frase que ele está ouvindo, e o botão do microfone está aceso.

Toque fora da imagem para fechar.

Uma solicitação de férias com três campos preenchidos e o VIX preenchendo o campo Fim.

Toque fora da imagem para fechar.

O campo de aprovação está vazio e marcado, e a bolha do VIX pergunta quem aprova.

Toque fora da imagem para fechar.

O formulário completo e a bolha do VIX perguntando se pode enviar.

Toque fora da imagem para fechar.

Como funciona

Seis etapas, da tecla à tela. O modelo planeja; o código age.

  1. Tecla

    F9 em qualquer programa; o VIX aparece sem roubar o foco.

    C#
  2. Captura

    O microfone sai em pedaços de 100 ms.

    Electron
  3. Transcrição

    Ao vivo, enquanto você fala.

    Gemini Live0,32 s
  4. Plano

    Uma chamada por fala devolve um plano em JSON.

    Gemini0,57 s
  5. Executor

    Confere as regras e as travas. A palavra final é do código.

    Node.js
  6. Navegador

    Clica e digita à vista; depois lê a tela de volta.

    Playwright4,3 s

O modelo não chama ferramentas livremente. A cada fala, ele devolve um plano com campos fixos: o que fazer, em que dia, de onde copiar, os blocos com só o que foi dito e, se faltar algo, a pergunta. O plano ao lado é uma forma simplificada, com dados inventados.

Depois de agir, o VIX lê a tela e só então conta o que fez. Ele não tem como dizer que fez o que não fez.

{
  "acao": "preencher",
  "data": "2026-10-14",
  "copiar_de": "anterior",
  "blocos": [
    { "indice": 0, "inicio": "08:00", "fim": "12:00" }
  ],
  "pergunta": "",
  "fala": "Lancei a manhã de ontem."
}

Decisões

A escolhaEm vez deCusto aceito
O modelo planeja, o código age

Em vez de: Deixar o modelo chamar ferramentas livremente.

Custo aceito: Cada tipo de formulário pede o seu esquema e o seu executor.

Três travas, em código

Em vez de: Confiar que o modelo pede confirmação.

Custo aceito: Uma fala a mais a cada envio: ler sempre, escrever com ordem, enviar com “pode enviar”.

Tecla em vez de palavra de ativação

Em vez de: Microfone aberto o dia inteiro, esperando o nome dele.

Custo aceito: Um gesto a mais; em troca, ele nunca abre o microfone sozinho.

Transcrever enquanto a pessoa fala

Em vez de: Mandar o áudio inteiro no fim: 3,1 s só para ter o texto.

Custo aceito: Uma conexão aberta durante a fala; o texto sai em 0,32 s.

Corrida entre modelos

Em vez de: Esperar sempre o modelo mais forte.

Custo aceito: Às vezes fica a resposta do modelo leve, que entra se o forte não responde em 3 s.

Um navegador só dele, à vista

Em vez de: Controlar o mouse e o teclado do computador.

Custo aceito: Escopo mais estreito; cada passo fica visível e nada interfere no que você faz.

Como foi construído

  1. ago
    O personagem

    Um robô 3D feito todo em código, em Three.js, sem modelos prontos, com seis estados e uma boca de equalizador movida pela voz.

  2. 14/10
    Entender o formulário

    Antes de escrever código, mapear os campos, as regras e o que cada escolha abre ou exige.

  3. 15/10
    O primeiro ciclo inteiro

    Uma cópia local do formulário com dados inventados, a tecla, o plano, o preenchimento e a bateria de cenários. No mesmo dia, a transcrição ao vivo: de 3,1 s para 0,32 s.

  4. 16/10
    O jeito de usar

    O microfone que nunca abre sozinho, os 2 s de silêncio, a memória do dia e uma demanda por linha.

  5. 19/10
    Fechar o dia

    “Fecha o dia”, “o que falta lançar” e os horários do computador como rascunho. Mais 5 de 5 cenários novos.

Trabalhei com agentes de IA de código: eu definia o comportamento, as regras e os critérios de aceite, eles escreviam o código, e as baterias de cenários diziam se a mudança ficava.

Limites

  • O esquema do plano, as regras e o executor são deste formulário de lançamento de horas; cada formulário novo pede a sua descrição.
  • Os números vêm de uma cópia local do formulário, com dados inventados e falas sintetizadas; a próxima bateria leva fala real e ruído de escritório.

Hoje e a seguir

Hoje

O VIX preenche o formulário web de lançamento de horas, na janela de navegador dele. A transcrição e o planejamento usam um serviço de IA em nuvem: a fala e um resumo da tela vão para esse serviço; a senha, nunca.

A seguir

  1. Um executor por configuração: um formulário novo descrito num arquivo, sem código novo. A planilha de banco de horas do vídeo é a primeira candidata.
  2. Mais vozes nas baterias, com fala real e ruído de escritório.
  3. Cronometrar o mesmo dia lançado à mão e por voz.

Código escrito por agentes de IA, sob a direção do autor.

As telas das imagens e do vídeo foram feitas para o comercial, com nomes e dados inventados.

Próximo projeto da visitaOrquestra Studio