Initialize dither home, write config, and choose where the markdown library lives.
dither init is the required first step before any library-needing command will run. It writes <dither-home>/config.json, creates the library directory, and pre-downloads qmd's model weights so the first dither search doesn't hang.
Library directory. Created if missing. Canonicalised via realpath. Must be a writable directory.
--no-download
off
Skip qmd model weight prefetch (offline / CI). Search will fall back to lex-only until weights land.
If you don't pass --library on a TTY, init drops into an interactive prompt for the path (default: <dither-home>/library). Without a TTY, --library is required and init exits with code 2 if it's missing.
Run store.update() once over the library so the qmd SQLite exists with schema applied. Empty libraries skip this — the SQLite is created lazily on first plugin promote.
Unless --no-download, attempt to pre-download embedding/rerank model weights. Failure is non-fatal — the summary flags it and search degrades to lex-only until weights land.
dither init is one-shot — re-running it on an already-initialised home is a read-only no-op. There is no --force. To change the library path, remove <dither-home>/config.json and run dither init again:
The old library directory is not moved or deleted — it stays on disk for you to handle. The qmd index also stays; drop qmd-index.sqlite if you want it rebuilt against the new library.
If the daemon is running, send it a reload after the reconfig so it picks up the new library:
dither daemon reload
Without the reload, the daemon keeps watching the previous library until it next restarts.
$ dither initWelcome to dither.? Where should your library live? › ~/.dither/library✓ wrote ~/.dither/config.json✓ created library at ~/.dither/library✓ pre-downloaded model weightsnext: dither plugin install <path>
Adopt an existing folder as the library:
$ dither init --library ~/Documents/dither✓ wrote ~/.dither/config.json✓ using library at ~/Documents/dither✓ pre-downloaded model weightsnext: dither plugin install <path>
CI / offline:
$ dither init --library ~/.dither/library --no-download✓ wrote ~/.dither/config.json✓ created library at ~/.dither/library• weights skipped (--no-download)next: dither plugin install <path>
Re-run is a no-op:
$ dither initdither is already initialized at ~/.dither library: ~/.dither/library