wisp

It finishes the names already on your screen.

Grey suggestions for zsh, written by a small model that runs on your own machine.

Install Read the docs

These demos replay completions wisp produced in testing. The output around them is sample text, and this page runs no model.

It reads what just scrolled past.

wisp reads the last 60 lines of your terminal, along with your history, the files in this folder and your git branches.

Before you type, and while you do.

It suggests the next command on an empty prompt, and completes the line once you pause typing for 60 ms.

On an empty prompt
While you type

Press the right arrow key to accept. Alt+F takes one word.

Long commands, put together for you.

It takes the name from your screen and the flags from what you ran before.

Name from the screen Flags from an earlier command Recorded on an Apple M4 Pro: aws with Qwen2.5-Coder 1.5B in 224 ms, ffmpeg with 3B in 775 ms.

Works in the terminal you have.

Without a screen source, wisp still uses your history, files and git branches. Terminal support in the docs

Nothing you type leaves your machine.

Your screen, history and keystrokes go only to llama.cpp, running on 127.0.0.1.

per suggestion while you type
50–120 ms
eval scenarios solved where the answer is only on screen
6 of 8
model download, once
1.65 GB

Latency and eval: Qwen2.5-Coder 1.5B, prompt cached, on an Apple M5 with 24 GB. Download: listed size of the 1.5B model file.

Four commands, then one check.

You need zsh on macOS or Linux, and about 2 to 4.5 GB of memory for the model.

  1. brew install llama.cpp
  2. curl -fsSL https://raw.githubusercontent.com/lolabradora/wisp/main/install.sh | sh
  3. wisp setup
  4. echo 'eval "$(wisp init zsh)"' >> ~/.zshrc
  5. wisp doctor

Read install.sh first Installation guide