Skip to content

Quick Start

Five minutes from zero to a searchable, local knowledge base.

  1. Install kura.

    On macOS with Homebrew:

    brew install kechol/tap/kura

    The formula pulls in the Homebrew SQLite kura needs to load its search extensions. On other platforms, grab the archive for your system from Releases — see Installation for the details.

  2. Initialize the store.

    kura init # create ~/.kura, download the tokenizer, create the DB
    kura doctor # verify SQLite, extensions, LLM providers, DB integrity

    kura init downloads the Japanese morphological tokenizer (sqlite-vaporetto, ~6.5 MB) from GitHub Releases with SHA256 verification. On platforms it doesn’t support, kura falls back to a trigram tokenizer automatically.

  3. Add a few documents.

    kura add notes/sqlite-wal.md --tags tech/db/sqlite
    echo "# Today's note" | kura add - --title "Today's note"
    kura clip https://example.com/article # capture a web page, cleaned by the LLM, filed under clips/
    kura mv "Today's note" --path db/sqlite # optionally file it under a path later

    A document path (--path) is always optional — documents without one live at the bucket root, which works fine as an inbox.

  4. Search three ways.

    kura search "WAL checkpoint" # keyword (FTS5 BM25, < 100ms)
    kura vsearch "how writes stay readable" # semantic (vector KNN)
    kura query "SQLite concurrency" # hybrid + rerank (best quality)

    Keyword search always works. vsearch and query use a local LLM when one is available and degrade gracefully when it isn’t — see Search.

  5. Read, link, and browse.

    kura get "Today's note" # by doc key, #key, full path, or title
    kura link ls "Today's note" # outlinks, backlinks, 2-hop links
    kura browser # http://127.0.0.1:7578 — viewer, editor, graph
  • [[Title]] / [[Title|display text]] — wiki links. Write the link first and it connects automatically when the target page is created later. If two documents share a title, [[db/sqlite/Title]] (full path) pins the link to one of them.
  • #tech/db/sqlite — hierarchical tags, extracted when you save.
  • Concept — why kura refuses forced filing.
  • Search — how the three search modes work.
  • AI Agents (MCP) — wire kura into Claude Code and other agents.
  • Configuration — models, buckets, and environment variables.