How it works

How it works

One prompt for a new question or an answer you’ve used before. Start typing. Myellm searches your history while you decide what to ask.

Search as you type

With an empty prompt, Myellm shows your recent answers. Type a few words and the list becomes search results. Select an answer to open it immediately, or keep typing a new question. There’s no separate search mode to switch into.

mm
❯ way
  results
▶ wayland clipboard from stdout 3× ⧉5 6d
· wayland vs x11 clipboard      1×    2w
· copy over ssh                 2× ⧉1 1w

[c] copied · clip · echo "text" | wl-copy

Keyword results appear first. With a local embedding model installed, semantic search adds related matches, so you don’t have to remember your original wording. Weaker matches appear dimmer. Search runs against your local history; opening a result makes no inference request.

Ask your model

From the prompt, Enter submits your question. Suggestions stay out of the way until you deliberately navigate to one. Answers stream in as formatted text with highlighted code, and the prompt stays live while the model is working.

mm
❯ pipe stdout to wayland clipboard
  Enter ask · default  Shift+Enter newline
──────────────────────────────────────────
Use wl-copy from wl-clipboard:

  echo "text" | wl-copy

fresh · streaming

mm --setup guides three paths: add an OpenAI, Claude, or Gemini API key; explicitly download the managed on-device model on Linux x86-64; or connect an OpenAI-compatible server you already run, such as llama.cpp, Ollama, or LM Studio. The full setup also configures the default model and reasoning effort, profiles, notes, hotkeys, and appearance.

In the TUI, Alt-M and Alt-Shift-M cycle the model for your next question, while Alt-E and Alt-Shift-E cycle the reasoning effort that model supports. Those choices last for the current TUI session and do not rewrite your saved defaults. The refine composer has its own controls. One model still answers each question; multi-model dispatch is not built yet.

Fresh cloud answers use your provider’s API and billing. The opt-in managed model runs locally with no provider API charge. Saved answers remain available locally either way.

Continue when one turn isn’t enough

Ctrl+B opens Breakout Chat from an answer or from scratch. It runs a separate multi-turn thread while the one-shot ask-and-recall workflow stays available underneath. You can copy the last reply or the whole transcript as Markdown.

Breakout threads currently remain separate from saved answer memory. Promoting a thread into a titled, reusable note is not built yet.

Ask again. It’s already there.

Submit the same question again and Myellm returns the saved answer from its exact-match cache. No new model request, no new API charge, no waiting for the answer to be generated again.

Automatic reuse for similar questions is a separate, opt-in setting. It uses a conservative similarity threshold and shows the match score. Semantic search works independently: you can find related answers yourself without enabling automatic reuse.

A silent wrong cache hit is worse than paying for the call. You can request a fresh answer when a match isn’t useful. Feedback on a live answer can distinguish an incomplete answer from a match to the wrong question; repair of reopened historical answers is still limited.

Copy the command. Skip the prose.

You came back for the command. Type a few characters, select the result, and copy it straight from the list:

  • way
  • ↓
  • c

Inside an answer, choose how much to take with you:

KeyCopies
cThe selected code line, or the first code block
mThe whole answer as Markdown
CAll code blocks

In the default full-screen view, J/K move the code-line selection marker while j/k and the arrow keys scroll. Myellm remembers the selected line when you reopen the answer. Copying uses wl-copy on Wayland, pbcopy on macOS, or OSC 52 in a supported terminal.

Keep useful answers close

Your questions, answers, and copy history live in local SQLite storage. Repeated questions and copies help rank the recent list, keeping the answers you use within reach. You can search and copy saved answers offline.

Responses are retained with their model, usage, and timing information. You can retitle a saved answer with t or ask T to generate a title. Background distillation—improving the saved note body as more answers accumulate—is still planned.

Deleting an answer hides it from the lists without permanently erasing it. Title changes and deletes share the durable action history: outside the prompt, u undoes the latest action and Ctrl-R redoes it. Undo survives a restart. mm --recover also lists and restores deleted answers from the command line.

Choose where your questions go

Ctrl+Enter restricts a question to providers you’ve marked private. By default, those providers must also run locally. You can change that policy to allow a trusted remote provider.

Local-only questions are stricter: inference and embedding work must stay on this device. A remote provider being trusted doesn’t make it local.

Private and local-only records live in a separate store, excluded from the planned sync path. Sync itself isn’t available yet; each installation currently keeps its own history.

Keep a prompt within reach

Run mm in your terminal. It starts its background service, myellmd, when needed, so there’s no separate service to launch by hand. The client handles typing and display; the service handles models, search, storage, and state shared with other surfaces.

The Hotkey section in mm --setup can generate and install Myellm-owned setup for Hyprland, Sway, niri, and terminal-native macOS paths. The process stays resident; showing it does not wait for a new client and daemon to start.

On Omarchy, an optional native bar plugin can search, ask, stream, copy, retry, refine, delete, undo, switch profiles, and open an answer in the resident TUI. On other supported Wayland compositors, the standalone mm-widget offers a prompt and live recents popup.

What’s next

The largest unfinished additions build on the same idea: make a useful answer easier to reach and improve.

  • Parallel answers. Read a fast model’s response while others work, then switch to another answer without starting over.
  • Better saved notes. Distill multiple responses into an improved answer you can keep returning to.
  • Memory across machines. Bring eligible history to your other devices, keeping private and local-only records out of sync.

See the roadmap for current capabilities and planned work.