walrus_core/lib.rs
1//! Walrus agent library.
2//!
3//! - [`Agent`]: Immutable agent definition with step/run/run_stream.
4//! - [`AgentBuilder`]: Fluent construction with a model provider.
5//! - [`AgentConfig`]: Serializable agent parameters.
6//! - [`Session`]: Lightweight conversation history container.
7//! - [`ToolRegistry`]: Schema-only tool store. No handlers or closures.
8//! - [`ToolSender`] / [`ToolRequest`]: Agent-side tool dispatch primitives.
9//! - [`Hook`]: Lifecycle backend for agent building, events, and tool registration.
10//! - [`Runtime`]: Agent registry, session store, and hook orchestration.
11//! - [`model`]: Unified LLM interface types and traits.
12//! - Agent event types: [`AgentEvent`], [`AgentStep`], [`AgentResponse`], [`AgentStopReason`].
13
14pub use agent::{
15 Agent, AgentBuilder, AgentConfig, COMPACT_SENTINEL,
16 config::HeartbeatConfig,
17 event::{AgentEvent, AgentResponse, AgentStep, AgentStopReason},
18 tool::{ToolRegistry, ToolRequest, ToolSender},
19};
20pub use runtime::{Runtime, Session, hook::Hook};
21
22pub mod agent;
23pub mod model;
24pub mod paths;
25pub mod protocol;
26mod runtime;
27pub mod utils;