UStackUStack
open-typeless icon

open-typeless

open-typeless è un’app di riconoscimento vocale push-to-talk per macOS: trascrive in streaming con Volcano Engine e inserisce il testo nel cursore.

open-typeless

Cos'è open-typeless?

open-typeless è un'applicazione desktop per macOS creata come vetrina per il framework Trellis. Offre un flusso di lavoro push-to-talk che registra la voce dal microfono, esegue trascrizione vocale in streaming tramite il servizio ASR di Volcano Engine e inserisce il testo riconosciuto nel cursore di testo attualmente attivo.

Il progetto è pensato per utenti che vogliono dettare in qualsiasi app senza cambiare finestra. Include anche un overlay flottante in stile glassmorphism che mostra lo stato di ascolto corrente e la trascrizione live mentre si tiene premuto il tasto di scelta rapida.

Caratteristiche principali

  • Tasto di scelta rapida push-to-talk (premi e tieni premuto): Tieni premuto il tasto Option destro per iniziare la registrazione; rilasciando il tasto si ferma la registrazione e si attiva l'inserimento automatico.
  • Trascrizione in streaming in tempo reale: Usa Volcano Engine ASR e invia risultati parziali per aggiornare l'overlay man mano che il riconoscimento procede.
  • Overlay flottante per stato e trascrizione: Mostra lo stato “In ascolto…” più il testo trascritto con aspetto effetto vetro smerigliato.
  • Inserimento al cursore senza cambio finestra: Inserisce automaticamente il testo riconosciuto nella posizione del cursore corrente per continuare a digitare nell'app in uso.
  • Non ruba il focus: La finestra flottante è progettata per non interrompere il flusso di lavoro dell'utente mentre rimane nell'applicazione corrente.

Come usare open-typeless

  1. Installa le dipendenze: esegui pnpm install.
  2. Configura le variabili d'ambiente: copia .env.example in .env e inserisci le credenziali Volcano Engine.
    • VOLCENGINE_APP_ID
    • VOLCENGINE_ACCESS_TOKEN
    • VOLCENGINE_RESOURCE_ID (esempi nel repo: volc.bigasr.sauc per modello 1.0, o volc.seedasr.sauc per modello 2.0, contrassegnato come consigliato)
  3. Avvia l'app: esegui pnpm start.
  4. Autorizza i permessi macOS al primo avvio:
    • Permesso microfono (per la registrazione)
    • Permesso Accessibilità (funzione ausiliaria) (per la gestione del tasto globale e l'inserimento testo) Dopo aver concesso i permessi, lascia l'app in esecuzione in background.
  5. Dettatura: In qualsiasi app con un campo testo, premi e tieni premuto Option destro, parla, poi rilascia. L'app inserisce il testo riconosciuto nel cursore.

Casi d'uso

  • Dettatura messaggi in qualsiasi editor: Tieni premuto Option destro per dettare in chat, editor email o campo documento; il testo riconosciuto appare al cursore senza incollare manualmente.
  • Compilazione form con feedback in tempo reale: Usa l'overlay flottante per monitorare cosa riconosce il sistema mentre parli, poi rilascia per confermare il testo.
  • Prendere appunti rapidi tra app: Avvia e ferma la voce velocemente con un tasto premi-e-tieni, mantenendo il focus sulla finestra attiva.
  • Risoluzione problemi tasto/inserimento testo: Se il tasto non risponde o il testo non si inserisce, verifica che il permesso Accessibilità sia abilitato per l'app e che il cursore sia in un'area di input.

FAQ

  • Perché il tasto di scelta rapida non funziona? Assicurati che l'app abbia il permesso Accessibilità (funzione ausiliaria) in Impostazioni di Sistema → Privacy e sicurezza → Accessibilità, e che sia nella lista delle app permesse.

  • Perché l'app non inserisce il testo? L'app target deve supportare l'input testo, e il cursore deve essere in un'area di inserimento testo. Verifica anche che il permesso Accessibilità sia autorizzato correttamente.

  • C'è un ritardo all'avvio per il riconoscimento vocale? La prima connessione al servizio Volcano Engine stabilisce una connessione WebSocket e può richiedere 1–2 secondi; gli usi successivi possono essere più veloci.

  • Posso cambiare il tasto di scelta rapida? Il repository indica che il tasto è attualmente fisso su Option destro, e la personalizzazione richiede la modifica di src/main/services/keyboard/keyboard.service.ts (specificamente triggerKey).

Alternative

  • Dettatura/voce integrata in macOS: Utile se preferisci il riconoscimento vocale a livello di sistema senza configurare credenziali per un provider ASR esterno. Il flusso di lavoro differisce perché l'integrazione e l'inserimento sono gestiti da macOS.
  • Strumenti generali di speech-to-text con copia/incolla manuale: Adattatori che forniscono trascrizioni ma richiedono tipicamente di incollare i risultati nell'app target, a differenza dell'approccio di inserimento al cursore di questo progetto.
  • App per espansione testo e dettatura con tasti rapidi: Strumenti che aiutano a inserire testo tramite scorciatoie; alcuni si concentrano su macro di editing o pipeline di trascrizione piuttosto che su ASR in streaming con overlay glassmorphism e push-to-talk.
  • Altre integrazioni speech-to-text per sviluppatori: Se stai creando il tuo flusso di lavoro, puoi usare API ASR e API globali per tasti/clipboard o accessibilità; differisce perché richiede più implementazione invece di usare un'app pronta.
open-typeless | UStack