Skip to content
WeType

Features

Two keys on the surface. A lot of decisions underneath.

Most of WeType's work is deciding when not to interrupt you. The rest is a language model on your Mac, a set of controls over how it behaves, and the plumbing to make both work in every app.

  • It works where you already type

    Mail, Slack, Notes, Safari, VS Code, Terminal. No extension, no app to switch to.

  • The model runs on your Mac

    In-process on Apple Silicon. No account, no API key, no per-token bill, and it works on a plane.

  • It reads the room, not just the line

    The message you are replying to and the lines above it go into the prompt.

  • It picks up how you write

    A small sample of your own sentences primes the model. Readable and deletable in Settings.

  • You choose the brain

    8 models in the app, from 379 MB to 4.5 GB. Swap whenever you like.

  • It gets out of the way on request

    Pause everywhere, or switch it off in one app. The keys, the delay and the ghost are all yours.

The interface

Three keys, and you'll only use two.

There is no palette, no sidebar, and no window to switch to. The suggestion appears where you are already looking.

TabTake the next word
Rebindable
`Take the whole suggestion
The key above Tab. § on ISO layouts
EscDismiss it
Nothing new is offered until you type again

To stop it entirely for a while, use the menu bar: pause everywhere for 5 minutes, 15 minutes, 1 hour, or until you turn it back on. The same menu can disable WeType in just the app you are in.

Controls

Tune it, or leave every default alone.

The defaults are chosen to be quiet. These exist for when your workflow disagrees with them.

Trigger delay
How long to wait after you stop typing before a suggestion is generated.
Ghost opacity
How faint the suggestion is drawn.
Accept keys
Rebind either key to any shortcut you like.
Maximum length
Cap how many words a single suggestion may run to.
Completion language
Automatic, or pin it to one of 15 languages.
Custom instructions
Free-text steering: "keep it short", "British spelling". Larger models follow it more closely.
Surrounding context
Whether to read the prose around the field. On by default; the main lever on relevance.
Learn from typing
Whether to keep a local sample of your sentences to prime the model toward your voice.
Read the screen
Optional OCR of the focused window, for apps whose text isn't reachable any other way. Off by default.
Emoji completion
Type :smi and accept to get 🙂.
Typo correction
Offers the system autocorrect's fix as a suggestion you can accept.
Activity icon
Show the live indicator beside the field, inside it, or not at all.

Per-app rules

Every one of these can be set for a single app, layered over the built-in defaults.

  • Turn WeType off in one app and leave it on everywhere else
  • Allow or block mid-line completion per app
  • Turn Tab acceptance off where Tab already means something
  • Switch insertion from paste to direct typing, so clipboard-history tools stay clean
  • Suppress suggestions after a suspected typo

Models

8 to choose from, downloaded inside the app from the Ollama registry. Larger models read the surrounding conversation; the smallest ones only continue the line you are on, and the picker says which is which.

  • Qwen 2.5 3Bbase1.9 GB
  • Llama 3.2 3Bbase1.9 GB
  • Gemma 2Bbase1.6 GB
  • Llama 3.2 1Bbase770 MB
  • Qwen 2.5 0.5Bbase379 MB
  • Gemma 3 4Binstruct3.2 GB
  • Qwen 2.5 Coder 1.5Bcode940 MB
  • Qwen 2.5 Coder 7Bcode4.5 GB

Languages

Pin completions to any of 15 languages.

Or leave it automatic and let the model follow whatever you are writing in. Useful when you switch languages mid-thread and detection wobbles on a short field.

  • English
  • Spanish
  • French
  • German
  • Italian
  • Portuguese
  • Dutch
  • Urdu
  • Hindi
  • Arabic
  • Turkish
  • Russian
  • Chinese
  • Japanese
  • Korean

How well each one works depends on the model you chose. The larger models handle more languages well.

Easier to feel than to read about.

100 accepted words a day, no card and no account.