Skip to main content

walrus_core/
lib.rs

1//! Walrus agent library.
2//!
3//! - [`Agent`]: Stateful execution unit with step/run/run_stream.
4//! - [`AgentBuilder`]: Fluent construction with a model provider.
5//! - [`AgentConfig`]: Serializable agent parameters.
6//! - [`Dispatcher`]: Generic async trait for tool dispatch.
7//! - [`ToolRegistry`]: Canonical dispatcher — holds `(Tool, Handler)` pairs.
8//! - [`Hook`]: Lifecycle backend for agent building, events, and tool registration.
9//! - [`model`]: Unified LLM interface types and traits.
10//! - Agent event types: [`AgentEvent`], [`AgentStep`], [`AgentResponse`], [`AgentStopReason`].
11
12pub use agent::{Agent, AgentBuilder, AgentConfig, parse_agent_md};
13pub use dispatch::{Dispatcher, Handler, ToolRegistry};
14pub use event::{AgentEvent, AgentResponse, AgentStep, AgentStopReason};
15pub use hook::Hook;
16
17mod agent;
18mod dispatch;
19mod event;
20pub mod hook;
21pub mod model;
22pub mod utils;