KeyType: autocomplete AI system-wide open-source per macOS

Progetto GitHub KeyType offre utility on-device per tab-autocomplete AI system-wide su macOS con LLM locali, alternativa MIT a Cotypist.

KeyType: autocomplete AI system-wide open-source per macOS

KeyType su GitHub Trending

KeyType è un'applicazione open-source per macOS che aggiunge autocompletamento basato su LLM locale in ogni campo di testo del sistema. L'app osserva il campo attivo, genera una continuazione breve con un modello locale e la mostra come testo fantasma accettabile con il tasto Tab. Il progetto è stato pubblicato su GitHub da johnbean393 e compare tra i repository in tendenza. Si presenta come alternativa MIT-licensed all'app chiusa Cotypist.

Come funziona il meccanismo di autocompletamento

A conceptual 3D illustration of a glowing microchip processing data streams, with abstract floating UI elements representing text input fields and autocomplete suggestions, modern dark mode tech aesthetic, neon blue and purple accents, no text or logos.

KeyType si basa su diversi package Swift separati che gestiscono fasi distinte. MacContextCapture usa Accessibility API per leggere il testo intorno al cursore e identificare il campo attivo. Prompting costruisce un prompt sezionato con budget di token limitato. ModelRuntime avvolge llama.cpp per eseguire il modello in locale, mentre ConstrainedGeneration applica logit masking e trie per restringere le uscite a token ammessi. CompletionUI disegna il suggerimento inline senza interferire con l'applicazione ospite.

L'installazione richiede macOS 14 o superiore. Dopo aver scaricato il DMG dalla pagina release, basta trascinare l'app in Applicazioni e seguire la procedura di onboarding che chiede i permessi di accessibilità. Per chi compila dal sorgente, il workspace Xcode contiene lo schema principale e i package in Packages/. I comandi swift build e swift test funzionano sui singoli package come AutocompleteCore e Prompting.

Vantaggi e limiti per chi sviluppa

Il codice è diviso in moduli chiari: TokenProfiles gestisce i profili ACPF, TextInsertion sceglie tra pasteboard e invio di keystroke, AppCompatibility permette override per dominio. Questo rende più semplice aggiungere supporto per nuove app o modificare la politica di generazione. L'uso di modelli locali come Qwen o Gemma riduce la latenza e mantiene i dati sul dispositivo.

Tuttavia l'app dipende ancora dalla qualità del modello locale e dalla precisione della cattura Accessibility. In alcune applicazioni sandboxate o con campi personalizzati il rilevamento del cursore può fallire. Non esiste al momento una versione per altri sistemi operativi e il progetto richiede Xcode recente per lo sviluppo.

Perché vale la pena provarlo

A sleek, modern workspace setup featuring a minimalist laptop on a clean desk, surrounded by abstract glowing geometric shapes symbolizing speed and AI assistance, soft ambient lighting, high-tech productivity concept, no text or logos.

Per chi scrive codice o documentazione su macOS, KeyType riduce il tempo dedicato a completamenti ripetitivi senza inviare testo a servizi esterni. Il repository

KeyTypejohnbean393
Vedi su GitHub →
fornisce già una base solida con test e documentazione interna. Chi ha bisogno di autocompletamento contestuale in più applicazioni può partire da qui invece di integrare librerie separate in ogni progetto.

FAQ

KeyType funziona con qualsiasi modello locale? Attualmente supporta modelli caricati tramite llama.cpp, quindi è possibile usare Qwen3, Gemma e altri formati GGUF compatibili.

Richiede connessione internet? No. L'inferenza avviene interamente in locale dopo il download del modello.

Posso modificarlo per un editor specifico? Sì. Il package AppCompatibility permette di definire policy per dominio o applicazione senza toccare il nucleo di generazione.

---

📖 Leggi anche

Hai bisogno di una consulenza?

Aiuto aziende e startup a sviluppare software, automatizzare processi e integrare AI. Parliamone.

Scrivimi
← Torna al blog