Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Lode

No need to build another knowledge base. Your workspace is already a lode of knowledge.

Lode is a local-first knowledge mining engine that turns your workspace into a searchable knowledge lode.

[!WARNING] Lode is currently in early development. Features may be incomplete, behavior may change, and breaking changes may occur before the first stable release.

Why Lode?

Your knowledge already exists.

It lives in:

  • Documentation explaining concepts and decisions.
  • Markdown notes capturing project knowledge.
  • Design documents describing systems and workflows.
  • Text files accumulated throughout development.

The problem is not storing more knowledge.

The problem is finding the right piece of knowledge when you need it.

Lode helps AI agents access workspace-specific knowledge by indexing existing documents and exposing them through semantic and lexical retrieval.

Instead of relying only on general-purpose models, agents can access the information that belongs to your projects.

Install

Install from source

  1. Clone the repository:

    git clone https://github.com/cubelitblade/lode.git
    cd lode
    
  2. Install:

    uv tool install .
    
  3. Verify:

    lode --help
    

Quickstart

1. Provide an embedding server

Lode does not ship with an embedding model. Bring your own embedding provider. Lode supports local embedding servers such as Text Embeddings Inference (TEI), as well as OpenAI-compatible embedding APIs.

[!TIP] The easiest way to start is using Hugging Face TEI:

For example:

mkdir -p $PWD/data

model=Qwen/Qwen3-Embedding-0.6B
volume=$PWD/data

docker run --gpus all \
  -p 8080:80 \
  -v $volume:/data \
  --pull always \
  ghcr.io/huggingface/text-embeddings-inference:cuda-latest \
  --model-id $model

For more information, see Hugging Face: Text Embeddings Inference.

2. Configure Lode

Set your embedding provider:

lode config set embedding.provider "openai_compatible" --scope user
lode config set embedding.openai_compatible.endpoint <endpoint> --scope user
lode config set embedding.model <model-name> --scope user
lode config set embedding.openai_compatible.key <api-key> --scope user # optional

For a TEI native endpoint, use tei_native instead:

lode config set embedding.provider "tei_native" --scope user
lode config set embedding.tei_native.endpoint <endpoint> --scope user
lode config set embedding.model <model-name> --scope user

Workspace-specific configuration can also be created using workspace scope.

3. Survey a workspace

Discover documents in your workspace:

lode --workspace <path> survey

Survey builds the map of your knowledge lode.

4. Mine a workspace

Generate embeddings and store indexed chunks:

lode --workspace <path> mine

Mining processes discovered documents, generates embeddings, and stores searchable indexes locally in SQLite.

5. Prospect knowledge

Search your workspace:

lode --workspace <path> prospect <query>

Lode performs hybrid retrieval using semantic similarity and BM25 lexical matching.

It combines meaning-based search with exact keyword matching, then returns candidate chunks with scores and digests.

6. Dig the ore

Retrieve a specific chunk:

lode --workspace <path> dig <digest>

This returns the complete content associated with the digest.

FAQ

Why does lode fail to load SQLite extensions on macOS?

Possible reason

Lode requires SQLite extension loading for certain features.

Some Python builds, especially those linked against SQLite libraries without loadable extension support, may not provide sqlite3.Connection.enable_load_extension().

This depends on how Python and SQLite were built, not only on the Python version. CPython documents that loadable SQLite extension support is disabled by default and notes macOS as a notable platform where the underlying SQLite library may lack this capability.

You can verify the capability with:

import sqlite3

print(hasattr(sqlite3.Connection, "enable_load_extension"))

Solution

  • Use a separately installed Python distribution instead of the system-provided Python.
  • In CI environments, explicitly configure the Python version and interpreter used by uv to avoid relying on the runner's preinstalled Python.

For more information, see:

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lode_cli-0.1.0a1-py3-none-any.whl (5.1 MB view details)

Uploaded Python 3

File details

Details for the file lode_cli-0.1.0a1-py3-none-any.whl.

File metadata

  • Download URL: lode_cli-0.1.0a1-py3-none-any.whl
  • Upload date:
  • Size: 5.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for lode_cli-0.1.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 36b3965f3fab56cfe323ed0faf2b7b59f2d14ab853e986221e12719e2717f739
MD5 9da7aaf922f12c41aff1745900c8dd07
BLAKE2b-256 624e621410a5c31f90ee78ddbb68deb1e0fd4b9a6ee0a1e5df552192469bfa59

See more details on using hashes here.

Provenance

The following attestation bundles were made for lode_cli-0.1.0a1-py3-none-any.whl:

Publisher: release-lode.yml on cubelitblade/lode

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.1.0a1 This release

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page