1#![forbid(unsafe_code)]
18
19mod agent;
20mod error;
21mod llm;
22pub mod mock;
23pub mod persistence;
24pub mod session;
25pub mod stdlib;
26pub mod supervisor;
27pub mod tools;
28pub mod tracing;
29
30pub use agent::{spawn, spawn_with_llm_config, AgentContext, AgentHandle, Message};
31pub use error::{ErrorKind, SageError, SageResult};
32pub use llm::{LlmClient, LlmConfig};
33pub use mock::{
34 try_get_mock, with_mock_tools, MockLlmClient, MockQueue, MockResponse, MockToolRegistry,
35};
36pub use persistence::{CheckpointStore, Persisted};
37pub use session::{
38 ProtocolStateMachine, ProtocolViolation, SenderHandle, SessionId, SessionRegistry,
39 SessionState, SharedSessionRegistry,
40};
41pub use supervisor::{RestartConfig, RestartPolicy, Strategy, Supervisor};
42pub use tools::{
43 DatabaseClient, DbRow, FsClient, HttpClient, HttpResponse, ShellClient, ShellResult,
44};
45pub use tracing as trace;
46
47pub mod prelude {
49 pub use crate::agent::{spawn, spawn_with_llm_config, AgentContext, AgentHandle, Message};
50 pub use crate::error::{ErrorKind, SageError, SageResult};
51 pub use crate::llm::{LlmClient, LlmConfig};
52 pub use crate::mock::{
53 try_get_mock, with_mock_tools, MockLlmClient, MockQueue, MockResponse, MockToolRegistry,
54 };
55 pub use crate::persistence::{CheckpointStore, Persisted};
56 pub use crate::session::{
57 ProtocolStateMachine, ProtocolViolation, SenderHandle, SessionId, SessionRegistry,
58 SessionState, SharedSessionRegistry,
59 };
60 pub use crate::supervisor::{RestartConfig, RestartPolicy, Strategy, Supervisor};
61 pub use crate::tools::{
62 DatabaseClient, DbRow, FsClient, HttpClient, HttpResponse, ShellClient, ShellResult,
63 };
64 pub use crate::tracing as trace;
65}