Skip to main content

khive_runtime/
lib.rs

1//! khive-runtime: composable Service API used by daemon, MCP server, and CLI.
2//!
3//! Wraps `StorageBackend` + query compilation into a single Rust API.
4//!
5//! # Quick start
6//!
7//! ```ignore
8//! use khive_runtime::{KhiveRuntime, RuntimeConfig};
9//!
10//! // In-memory for tests:
11//! let rt = KhiveRuntime::memory()?;
12//!
13//! // Default (production): reads ~/.khive/khive-graph.db
14//! let rt = KhiveRuntime::new(RuntimeConfig::default())?;
15//!
16//! // Create an entity:
17//! let entity = rt.create_entity(None, "concept", "LoRA", None, None, vec![]).await?;
18//!
19//! // Link two entities (EdgeRelation is the typed relation):
20//! let edge = rt.link(None, entity.id, other_id, EdgeRelation::Extends, 1.0).await?;
21//! ```
22
23pub mod curation;
24pub mod error;
25pub mod fusion;
26pub mod graph_traversal;
27pub mod objectives;
28pub mod operations;
29pub mod pack;
30pub mod portability;
31pub mod retrieval;
32pub mod runtime;
33
34pub use curation::{EdgeListFilter, EntityPatch, MergeStrategy, MergeSummary};
35pub use error::{RuntimeError, RuntimeResult};
36pub use fusion::FusionStrategy;
37pub use graph_traversal::{PathNode, TraversalOptions};
38pub use khive_gate::{
39    ActorRef, AllowAllGate, AuditDecision, AuditEvent, Gate, GateContext, GateDecision, GateError,
40    GateRef, GateRequest, Obligation,
41};
42pub use objectives::{
43    GraphProximityObjective, RetrievalCandidate, RrfFusionObjective, TextRelevanceObjective,
44    VectorSimilarityObjective,
45};
46pub use operations::{NoteSearchHit, QueryResult, Resolved};
47pub use pack::{
48    DispatchHook, KindHook, PackFactory, PackRegistration, PackRegistry, PackRuntime, VerbRegistry,
49    VerbRegistryBuilder,
50};
51pub use portability::{ImportSummary, KgArchive};
52pub use retrieval::{SearchHit, SearchSource};
53pub use runtime::{parse_pack_list, KhiveRuntime, RuntimeConfig};