LanceDBVFS exposes a LanceDB table as a read-only filesystem: group-by
columns become nested folders, each row is a card plus an optional blob file, and
semantic search is the search CLI. The TypeScript backend mirrors the
Python one and returns identical results.
Node
Config
Fields marked secret are redacted in snapshots.
VFS.md
The VFS.md an agent reads with LanceDB mounted at/<path>.
- Rendered
- Raw
groupBy value holding / renders as ∕, and a blank or dot-led value is
led by ⁄, so every value keeps its own directory that lists and opens, and
descending into it filters for exactly that value.
Semantic search is the search command, not a path: it returns ranked rows as
the canonical <id>.md paths above, annotated with the vector distance.
Cloud and Enterprise
db:// URIs connect to LanceDB Cloud (apiKey + region) or Enterprise
(apiKey + hostOverride):
Integration
What LanceDB answers through its own API, so fewer files are read. Integration explains each command.
The Python LanceDB docs list when each search answers and what it can miss.
Supported commands
ls, cd, tree, cat, stat, find and wc. grep/rg stay
lexical; the search CLI’s search "<query>" <path> is the semantic path, returning ranked
rows as canonical <id>.md paths plus a score, so results compose with cat,
wc, and pipes. Flags: --top-k, --threshold, --method semantic.
Search requires a table built with an embedding function on a source field, so
tbl.search(text) auto-embeds the query. The Node example under
examples/typescript/vfs/lancedb/ builds such a table and produces the same output
as the Python example, including identical similarity scores (0.2679).