No description
  • Swift 99%
  • Shell 1%
Find a file
2026-06-03 16:39:53 +08:00
.cursor/rules chore: Refactor docs 2026-05-31 23:15:08 +08:00
.github docs: Update issue templates 2026-06-03 01:45:17 +08:00
docs feat: Eval harness 2026-06-03 16:39:53 +08:00
KeyType fix: Obsidian compatibility 2026-06-03 00:40:11 +08:00
KeyType.xcodeproj feat: Eval harness 2026-06-03 16:39:53 +08:00
KeyType.xcworkspace feat: Context capture 2026-05-29 18:08:57 +08:00
KeyTypeTests fix: Obsidian compatibility 2026-06-03 00:40:11 +08:00
KeyTypeUITests Initial Commit 2026-05-29 13:24:58 +08:00
Packages feat: Eval harness 2026-06-03 16:39:53 +08:00
Scripts feat: Release flow 2026-06-01 00:16:02 +08:00
tmp/pdfs fix: ACPF profile build error logs 2026-06-01 03:02:35 +08:00
.gitignore feat: Eval harness 2026-06-03 16:39:53 +08:00
AGENTS.md docs: Fix license URL 2026-06-03 15:53:59 +08:00
LICENSE feat: Context capture 2026-05-29 18:08:57 +08:00
README.md docs: Fix license URL 2026-06-03 15:53:59 +08:00

KeyType app icon

KeyType

An open-source, on-device, system-wide tab-autocomplete utility for macOS.

Download DMG

KeyType demo video

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 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.

git clone https://github.com/johnbean393/KeyType.git
cd KeyType
open KeyType.xcworkspace

Build/run the KeyType scheme.

Per-package builds:

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 (0008)
└── 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.