pub struct RuntimeConfig {
pub db_path: Option<PathBuf>,
pub default_namespace: Namespace,
pub embedding_model: Option<EmbeddingModel>,
pub additional_embedding_models: Vec<EmbeddingModel>,
pub gate: GateRef,
pub packs: Vec<String>,
pub backend_id: BackendId,
}Expand description
Runtime configuration.
The db_path and embedding_model fields are deprecated in favour of
constructing the backend externally and calling KhiveRuntime::from_backend.
They remain for backward compatibility with tests and single-binary deployments.
Fields§
§db_path: Option<PathBuf>Path to the SQLite database file. None = in-memory (tests).
Deprecated: use KhiveRuntime::from_backend instead. The boot path
constructs backends from khive.toml (AppConfig) and passes them to
from_backend. Direct db_path usage persists only in tests.
default_namespace: NamespaceNamespace used when no explicit namespace is provided.
embedding_model: Option<EmbeddingModel>Local embedding model. None disables embedding and hybrid vector search;
hybrid_search then falls back to text-only.
Deprecated: embedding engines move to a per-pack EmbedderRegistry.
This field persists for backward compatibility until the embedder registry
is fully plumbed.
additional_embedding_models: Vec<EmbeddingModel>Additional embedding models to make available by request name.
embedding_model remains the default used by existing embed() and
embed_batch() callers. This list adds non-default models that can be
selected with embedder(name), embed_with_model(...), memory
remember.embedding_model, and memory recall.embedding_model.
gate: GateRefAuthorization gate consulted before each verb dispatch.
Default: AllowAllGate (permissive). For production policy enforcement,
plug in a Rego- or capability-witness-backed impl.
packs: Vec<String>Names of packs the transport layer should register into the VerbRegistry.
The transport layer (e.g. khive-mcp) reads this list and instantiates
the matching concrete pack types. Unknown names are reported as errors
by the transport, not silently ignored.
Default: ["kg"].
backend_id: BackendIdIdentifies this runtime’s backend in a multi-backend deployment.
Set by the boot path when constructing per-pack runtimes from khive.toml.
Single-backend deployments use the default BackendId::MAIN.
Trait Implementations§
Source§impl Clone for RuntimeConfig
impl Clone for RuntimeConfig
Source§fn clone(&self) -> RuntimeConfig
fn clone(&self) -> RuntimeConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more