https://github.com/johnbean393/KeyType
An open-source Cotypist with macOS system wide AI autocomplete
https://github.com/johnbean393/KeyType
ai ai-autocomplete autocomplete completions cotabby cotypist gemma4 llm macos qwen3-5
Last synced: 3 days ago
JSON representation
An open-source Cotypist with macOS system wide AI autocomplete
- Host: GitHub
- URL: https://github.com/johnbean393/KeyType
- Owner: johnbean393
- License: mit
- Created: 2026-05-31T16:08:48.000Z (22 days ago)
- Default Branch: main
- Last Pushed: 2026-06-08T09:19:18.000Z (15 days ago)
- Last Synced: 2026-06-08T10:25:16.054Z (15 days ago)
- Topics: ai, ai-autocomplete, autocomplete, completions, cotabby, cotypist, gemma4, llm, macos, qwen3-5
- Language: Swift
- Homepage:
- Size: 7.35 MB
- Stars: 281
- Watchers: 1
- Forks: 12
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Agents: AGENTS.md
Awesome Lists containing this project
- awesome-swift-macos-apps - KeyType - commit/johnbean393/KeyType?style=flat&label=" /> - Open-source, local LLM-powered tab autocomplete that offers inline ghost-text suggestions in any focused text field. (AI)
README
KeyType
An open-source, on-device, system-wide tab-autocomplete utility for macOS.
**KeyType** is an open-source, on-device, system-wide **tab-autocomplete utility for macOS**.
It watches the focused text field across any app, predicts a short continuation at the cursor
using a **local LLM**, and offers it as ghost text that you accept with **Tab**.
It is a MIT-licensed alternative to the closed-source app *Cotypist*.
## Getting started
### Installation
1. Download the latest release from the [releases](https://github.com/johnbean393/KeyType/releases) page
2. Double-click the downloaded `KeyType.dmg` file
3. Drag the `KeyType` app into `Applications`
4. Open `KeyType` and complete the onboarding
### Development
Requirements: macOS 14+ and a recent version of Xcode.
```sh
git clone https://github.com/johnbean393/KeyType.git
cd KeyType
open KeyType.xcworkspace
```
Build/run the **KeyType** scheme.
Per-package builds:
```sh
swift build --package-path Packages/AutocompleteCore
swift test --package-path Packages/Prompting
```
## Repo layout
```
KeyType/
├── KeyType.xcworkspace/ ← open this in Xcode
├── KeyType.xcodeproj/
├── KeyType/ ← app target (menu-bar shell)
├── KeyTypeTests/ KeyTypeUITests/
├── docs/ ← the project brief & playbooks (00–08)
└── Packages/ ← local SwiftPM packages (the real logic)
├── AutocompleteCore/ shared domain types & protocols
├── MacContextCapture/ AX focus + caret + text-field snapshot
├── Prompting/ sectioned, budgeted prompt builder
├── ModelRuntime/ llama.cpp wrapper
├── ConstrainedGeneration/ logit masking, trie admissibility, search
├── TokenProfiles/ ACPF profile reader + offline builder
├── CompletionUI/ overlay rendering (inline ghost text)
├── TextInsertion/ pasteboard / keystroke insertion strategies
└── AppCompatibility/ per-app / per-domain override policy
```
## License
MIT — see [LICENSE](https://github.com/johnbean393/KeyType/blob/main/LICENSE).