@kombifyio/sites-knowledge
v0.18.5
Published
KnowledgeStore implementations for kombify Sites Framework' corpus tier, one package with sub-path exports: /sqlite-vec (Node zero-infra, FTS5 + vec0 + RRF hybrid), /vectorize (Cloudflare, namespace-per-site + shard router). Root export ships the chunking
Readme
@kombifyio/sites-knowledge
Corpus-tier KnowledgeStore implementations for kombify Sites Framework, plus the
chunk → embed → upsert ingest pipeline. The contract (schemas + interfaces)
lives in @kombifyio/sites core; this package ships the backends:
| Export | What you get |
|---|---|
| @kombifyio/sites-knowledge | chunkDocument (recursive 512–1024-token chunking), createKnowledgeIngest (documents → chunk → embed → upsert), reciprocalRankFusion |
| @kombifyio/sites-knowledge/sqlite-vec | Node zero-infra store: FTS5 keyword leg + sqlite-vec (vec0) vector leg, RRF-fused mode: 'hybrid'. Structural SqliteLike handle — bring your own better-sqlite3 instance. |
| @kombifyio/sites-knowledge/vectorize | Cloudflare store: namespace-per-site on a deterministic shard fleet of Vectorize indexes. Vector-only (capabilities.hybrid: false); stats omitted (no honest per-namespace count). |
Tenant isolation is the contract's core invariant: the namespace is bound at
construction and absent from every method signature. See
docs/KNOWLEDGE.md for the consumer guide and the
two-tier model (tier: 'site' hot store vs tier: 'corpus').
Native test note: the sqlite-vec round-trip (FTS5 + vec0 + cross-namespace
leak checks) is gated behind KOMBIFY_RUN_NATIVE_TESTS=true — same as the
@kombifyio/sites-adapter/sqlite-vec suite. The default unit run uses the
structural fake and asserts SQL emission + namespace scoping.
