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.
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
-
Clone the repository:
git clone https://github.com/cubelitblade/lode.git cd lode
-
Install:
uv tool install .
-
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.
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
uvto avoid relying on the runner's preinstalled Python.
For more information, see:
Metadata
Release files for lode-cli 0.1.0a1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| lode_cli-0.1.0a1-py3-none-any.whl | Python 3 | none | any | Details |
Release files / lode_cli-0.1.0a1-py3-none-any.whl
| Download URL | lode_cli-0.1.0a1-py3-none-any.whl |
|---|---|
| Size | 5.1 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
36b3965f3fab56cfe323ed0faf2b7b59f2d14ab853e986221e12719e2717f739
|
|
BLAKE2b-256 checksum How to use checksums |
624e621410a5c31f90ee78ddbb68deb1e0fd4b9a6ee0a1e5df552192469bfa59
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 1, 2026.
Transparency logSecurity for lode-cli 0.1.0a1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 1 file in this release has been uploaded with provenance metadata.
Attestation for lode_cli-0.1.0a1-py3-none-any.whl
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 1, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.