UStackUStack
open-typeless icon

open-typeless

open-typeless é um app de fala push-to-talk no macOS que transmite a transcrição via Volcano Engine e insere o texto no cursor atual.

open-typeless

O que é open-typeless?

open-typeless é um aplicativo desktop para macOS construído como demonstração do framework Trellis. Ele oferece um fluxo de trabalho push-to-talk que grava fala do microfone, realiza transcrição de fala em texto em streaming usando o serviço ASR da Volcano Engine e insere o texto reconhecido no cursor de texto focado atualmente.

O projeto é destinado a usuários que querem ditar em qualquer app sem trocar de janelas. Ele também inclui uma sobreposição flutuante em estilo glassmorphism que mostra o estado atual de escuta e a transcrição ao vivo enquanto você mantém a tecla de atalho pressionada.

Principais Recursos

  • Tecla de atalho push-to-talk (pressione e segure): Segure a tecla Option direita para iniciar a gravação; solte a tecla para encerrar a gravação e acionar a inserção automática.
  • Transcrição em streaming em tempo real: Usa Volcano Engine ASR e transmite resultados parciais para que a sobreposição seja atualizada conforme o reconhecimento avança.
  • Sobreposição flutuante para status e transcrição: Exibe um estado “Escutando…” mais o texto transcrito com aparência de vidro fosco.
  • Inserção no cursor sem trocar de janela: Insere automaticamente o texto reconhecido na posição atual do cursor para que você continue digitando no app em uso.
  • Não rouba o foco: A janela flutuante é projetada para não interromper o fluxo de trabalho do usuário enquanto ele permanece no app atual.

Como Usar open-typeless

  1. Instale as dependências: execute pnpm install.
  2. Configure variáveis de ambiente: copie .env.example para .env e preencha as credenciais da Volcano Engine.
    • VOLCENGINE_APP_ID
    • VOLCENGINE_ACCESS_TOKEN
    • VOLCENGINE_RESOURCE_ID (exemplos no repositório: volc.bigasr.sauc para modelo 1.0, ou volc.seedasr.sauc para modelo 2.0, marcado como recomendado)
  3. Inicie o app: execute pnpm start.
  4. Autorize permissões do macOS na primeira execução:
    • Permissão de microfone (para gravação)
    • Permissão de Acessibilidade (Função auxiliar) (para manipulação de tecla global e inserção de texto) Após conceder as permissões, mantenha o app rodando em segundo plano.
  5. Dite: Em qualquer app com campo de texto, pressione e segure Option direita, fale e solte. O app insere o texto reconhecido no cursor.

Casos de Uso

  • Ditar mensagens em qualquer editor: Segure Option direita para ditar em chat, editor de e-mail ou campo de documento; o texto reconhecido aparece no cursor sem colar manualmente.
  • Preenchimento de formulários com feedback em tempo real: Use a sobreposição flutuante para monitorar o que o sistema está reconhecendo enquanto fala, depois solte para confirmar o texto.
  • Anotações rápidas entre apps: Inicie e pare a fala rapidamente com tecla de pressionar e soltar, mantendo o foco na janela ativa.
  • Solução de problemas com tecla de atalho/inserção de texto: Se a tecla não responder ou o texto não inserir, verifique se a permissão de Acessibilidade está ativada para o app e se o cursor está em área de entrada.

FAQ

  • Por que a tecla de atalho não funciona? Certifique-se de que o app tem permissão de Acessibilidade (Função auxiliar) em Configurações do Sistema → Privacidade e Segurança → Acessibilidade, e que está na lista de apps permitidos.

  • Por que o app não consegue inserir texto? O app alvo deve suportar entrada de texto, e o cursor deve estar em área de entrada de texto. Verifique também se a permissão de Acessibilidade está corretamente autorizada.

  • Há atraso inicial no reconhecimento de fala? A primeira conexão com o serviço da Volcano Engine estabelece uma conexão WebSocket e pode levar 1–2 segundos; usos subsequentes podem ser mais rápidos.

  • Posso alterar a tecla de atalho? O repositório indica que a tecla está fixa na Option direita, e personalização exige modificar src/main/services/keyboard/keyboard.service.ts (especificamente triggerKey).

Alternativas

  • Ditado/entrada de voz nativa do macOS: Útil quando prefere fala-para-texto em nível de sistema sem configurar credenciais para provedor ASR externo. O fluxo difere porque integração e inserção são gerenciadas pelo macOS.
  • Ferramentas gerais de fala-para-texto com cópia/colagem manual: Adaptadores que fornecem transcrição, mas geralmente exigem colar resultados no app alvo, diferente da inserção no cursor deste projeto.
  • Apps de expansão de texto e ditado por atalho: Ferramentas que inserem texto via atalhos; algumas focam em macros de edição ou pipelines de transcrição em vez de ASR em streaming com sobreposição fosca e push-to-talk.
  • Outras integrações de fala-para-texto para desenvolvedores: Se construir seu próprio fluxo, use APIs ASR e atalhos globais/área de transferência ou APIs de acessibilidade; difere por exigir mais implementação em vez de app pronto.
open-typeless | UStack