lash-runtime 0.1.0-alpha.59

Durable agent runtime for Rust: sessions, turns, tools, plugins. Embeddable facade over lash-core.
Documentation
pub(crate) use std::collections::BTreeMap;
pub(crate) use std::sync::{Arc, Mutex as StdMutex};

pub(crate) use async_trait::async_trait;
#[cfg(feature = "rlm")]
pub(crate) use lash_core::ProcessExecutionEnvSpec;
pub(crate) use lash_core::plugin::StaticPluginFactory;
pub(crate) use lash_core::runtime::{
    EffectHost, RuntimeEffectController, RuntimeSessionState, ScopedEffectController,
};
pub(crate) use lash_core::{
    DurabilityTier, DurableProcessWorker, DurableProcessWorkerConfig, InMemoryLiveReplayStore,
    LashRuntime, LiveReplayStore, MessageRole, ModelSpec, PluginHost, PluginSpec, PluginStack,
    ProcessExecutionEnvStore, ProcessHandleSummary, ProcessWorkDriver, ProcessWorkPoke,
    ProcessWorkRunner, QueuedWorkPoke, RuntimeEnvironment, RuntimeHandle, RuntimeHostConfig,
    RuntimeObservation, SessionPolicy, SessionSpec,
};
pub(crate) use tokio::sync::mpsc;
pub(crate) use tokio::task::JoinHandle;
pub(crate) use tokio_util::sync::CancellationToken;

#[cfg(test)]
pub(crate) use lash_core::TestLocalProcessRegistry;
pub(crate) use lash_core::plugin::runtime_host::SessionStateService;
pub(crate) use lash_core::{
    AssembledTurn, AttachmentStore, EventSink, ExecutionSummary, Message, PluginFactory,
    PluginMessage, ProcessRegistry, ProtocolTurnOptions, ProviderHandle, Residency,
    RuntimeErrorCode, RuntimePersistence, SessionCreateRequest, SessionCursor, SessionError,
    SessionHandle, SessionObservation, SessionObservationSubscription, SessionProcessEventKind,
    SessionReadView, SessionResume, SessionScope, SessionSnapshot, SessionStoreCreateRequest,
    SessionStoreFactory, SessionUsageReport, TerminationPolicy, ToolAvailability, ToolCallRecord,
    ToolManifest, ToolProvider, ToolRestoreReport, ToolResult, ToolSourceHandle, ToolState,
    TurnActivitySink, TurnOutcome,
};
pub(crate) use lash_core::{InputItem, TokenLedgerEntry, TokenUsage};
pub(crate) use lash_core::{PromptContribution, PromptLayer, PromptSlot, PromptTemplate};
pub(crate) use lash_core::{TurnActivity, TurnInput};
#[cfg(test)]
pub(crate) use lash_core::{TurnActivityId, TurnEvent};

pub(crate) use crate::admin::*;
pub(crate) use crate::core::*;
pub(crate) use crate::error::*;
pub(crate) use crate::plugin_binding::*;
pub(crate) use crate::prompt_layer::PromptLayerSink;
#[cfg(feature = "rlm")]
pub(crate) use crate::session::RlmSessionBuilder;
pub(crate) use crate::session::SessionBuilder;
pub(crate) use crate::turn::*;