dither
CLI reference

dither search

Search across your entries.

dither search <query> [flags]

Searches the qmd index built from your configured library. Prints one tab-separated line per hit: <displayPath>\t<score>\t<title>. Refuses with the standard pre-init error until dither init has run.

Arguments

NameDescription
queryPositional. The search string. Required.

Flags

FlagDescription
-c, --collection <name>Restrict the search to a single collection (one top-level folder under the library).
-n, --limit <N>Max results to return. Defaults to qmd's internal default.
--rerankRun the LLM reranker over the candidate set. Slower, higher quality. Only meaningful in hybrid mode.
--mode <hybrid|lex>hybrid (default) combines BM25 + vector + LLM query expansion. lex is pure BM25 — no models, no embeddings, instant.

--mode only accepts the literal strings hybrid and lex; anything else is ignored and the default is used.

Examples

Search everything:

dither search "auth flow"
# notes/auth.md         0.842  Auth flow notes
# meetings/2025-q3.md   0.611  Q3 planning

Restrict to one collection, top 5:

dither search "auth flow" -c notes -n 5

Lexical-only (no model download required):

dither search "exact phrase" --mode lex

With reranking:

dither search "what did I write about auth" --rerank

Notes

  • Hybrid mode requires qmd's models. By default, dither init pre-downloads them so the first query is fast; pass --no-download at init to skip and let them lazy-load instead.
  • If the library is empty, search returns no results silently.
  • Make sure the index is current — run dither index update after editing files outside the plugin runner.

See also: CLI overview.