Expand description
khive-runtime: composable Service API used by daemon, MCP server, and CLI.
Wraps StorageBackend + query compilation into a single Rust API.
§Quick start
ⓘ
use khive_runtime::{KhiveRuntime, RuntimeConfig};
use khive_types::Namespace;
// In-memory for tests:
let rt = KhiveRuntime::memory()?;
let tok = rt.authorize(Namespace::local()).unwrap();
// Create an entity:
let entity = rt.create_entity(&tok, "concept", None, "LoRA", None, None, vec![]).await?;
// Link two entities:
let edge = rt.link(&tok, entity.id, other_id, EdgeRelation::Extends, 1.0, None).await?;Re-exports§
pub use curation::ContentMergeStrategy;pub use curation::EdgeListFilter;pub use curation::EdgePatch;pub use curation::EntityDedupMergePolicy;pub use curation::EntityPatch;pub use curation::MergeSummary;pub use curation::NotePatch;pub use daemon::pid_path;pub use daemon::run_daemon;pub use daemon::socket_path;pub use daemon::DaemonDispatch;pub use daemon::DaemonRequestFrame;pub use daemon::DaemonResponseFrame;pub use embedder_registry::EmbedderProvider;pub use embedder_registry::EmbedderRegistry;pub use embedder_registry::LatticeEmbedderProvider;pub use engine_config::config_from_env;pub use engine_config::ConfigError;pub use engine_config::EngineConfig;pub use engine_config::KhiveConfig;pub use error::RuntimeError;pub use error::RuntimeResult;pub use graph_traversal::PathNode;pub use graph_traversal::TraversalOptions;pub use objectives::AmplifiedDecayAwareSalienceObjective;pub use objectives::DecayAwareSalienceObjective;pub use objectives::GraphProximityObjective;pub use objectives::MemoryRecallPipeline;pub use objectives::NoteCandidate;pub use objectives::RerankerObjective;pub use objectives::RetrievalCandidate;pub use objectives::RrfFusionObjective;pub use objectives::TemporalRecencyObjective;pub use objectives::TextRelevanceObjective;pub use objectives::VectorSimilarityObjective;pub use operations::LinkSpec;pub use operations::NoteSearchHit;pub use operations::QueryResult;pub use operations::Resolved;pub use pack::DispatchHook;pub use pack::KindHook;pub use pack::PackFactory;pub use pack::PackLoadError;pub use pack::PackRegistration;pub use pack::PackRegistry;pub use pack::PackRuntime;pub use pack::SchemaPlan;pub use pack::VerbRegistry;pub use pack::VerbRegistryBuilder;pub use portability::ImportSummary;pub use portability::KgArchive;pub use presentation::micros_to_iso;pub use presentation::present;pub use presentation::PresentationMode;pub use registry::ObjectiveRegistry;pub use registry::RegisteredObjective;pub use retrieval::SearchHit;pub use retrieval::SearchSource;pub use runtime::parse_pack_list;pub use runtime::runtime_config_from_khive_config;pub use runtime::BackendId;pub use runtime::KhiveRuntime;pub use runtime::NamespaceToken;pub use runtime::RuntimeConfig;pub use validation::GraphPatch;pub use validation::GraphSnapshot;pub use validation::RuleFn;pub use validation::RuleId;pub use validation::Severity;pub use validation::ValidationContext;pub use validation::ValidationReport;pub use validation::ValidationRule;pub use validation::Violation;
Modules§
- curation
- Curation operations: entity update/merge and edge-list filter type.
- daemon
- khived daemon server — persistent warm runtime over a Unix socket (ADR-049).
- embedder_
registry - EmbedderRegistry — pack-extensible embedding provider surface (ADR-031 extension).
- engine_
config - TOML-based embedding engine configuration for khive.
- error
- Runtime error types.
- fusion
- Fusion strategies for combining ranked result lists.
- graph_
traversal - objectives
- Retrieval Objective implementations for khive-runtime.
- operations
- High-level operations composing storage capabilities into user-facing verbs.
- pack
- Pack runtime trait and verb registry (ADR-025 step 2).
- portability
- KG export / import — portable JSON archive for namespace-scoped knowledge graphs.
- presentation
- Verb response presentation modes and transformation (ADR-045).
- registry
- Objective registry for dynamic dispatch.
- retrieval
- Retrieval operations: local embedding generation and hybrid search with RRF fusion.
- runtime
- KhiveRuntime — composable handle to all storage capabilities.
- validation
- Validation pipeline types for pack-contributed KG rules (ADR-034).
Structs§
- Actor
Ref - Caller identity.
kinddistinguishes user vs agent vs lambda etc. - Allow
AllGate - Permissive gate — every request is allowed with no obligations.
- Audit
Event - Structured audit record emitted once per gate consultation (ADR-018).
- Event
Observation - Event
View - Gate
Context - Per-request context — session, timing, transport source.
- Gate
Request - What the gate sees on every verb invocation.
- Handler
Def - Handler metadata for discovery and documentation (ADR-023, ADR-025).
- Namespace
- A validated, opaque namespace identifier.
- Note
Kind Spec - Kind-level schema specification for a note kind (ADR-004 §NoteKindSpec).
- Note
Lifecycle Spec - Lifecycle specification for a note kind (ADR-004 §NoteKindSpec).
- Pack
Schema Plan - DDL statements the pack needs applied to the auxiliary schema (ADR-019).
- Param
Def - Parameter type for
help=trueschema envelopes.
Enums§
- Audit
Decision - The outcome field of an
AuditEvent, serialised as"allow"/"deny". - Fusion
Strategy - Fusion strategy for combining ranked result lists.
- Gate
Decision - Gate
Error - Obligation
- Side-effects a policy may attach to an
Allowdecision. - Observation
Role - Referent
Kind - Verb
Category - Illocutionary force classification for a verb handler (ADR-025).
- Verb
Presentation Policy - Presentation override for a verb handler (ADR-045 §6 per-verb opt-out).
- Visibility
- Visibility tier for a handler (ADR-023).
Traits§
- Gate
- Authorization gate consulted before each verb dispatch.
Type Aliases§
- GateRef
- Shareable handle to a
Gateimpl.