agent_stream_kit/
lib.rs

1//! Agent Stream Kit - A framework for building and managing agents in Rust
2//!
3//! This crate provides a set of tools and abstractions to create, configure, and run agents
4//! in a stream-based architecture. It includes support for defining agent behaviors, managing
5//! agent flows, handling agent input and output.
6
7mod agent;
8mod askit;
9mod board_agent;
10mod config;
11mod context;
12mod definition;
13mod error;
14mod message;
15mod output;
16mod registry;
17mod runtime;
18mod spec;
19pub mod test_utils;
20mod value;
21
22// re-export async_trait
23pub use async_trait::async_trait;
24
25// re-export photon_rs
26#[cfg(feature = "image")]
27pub use photon_rs::{self, PhotonImage};
28
29// Re-export the crate under its canonical name for proc-macros.
30pub extern crate self as agent_stream_kit;
31pub use inventory;
32
33// re-export FnvIndexMap
34pub use fnv;
35pub use indexmap;
36pub type FnvIndexMap<K, V> = indexmap::IndexMap<K, V, fnv::FnvBuildHasher>;
37pub type FnvIndexSet<T> = indexmap::IndexSet<T, fnv::FnvBuildHasher>;
38
39// Re-exports askit_macros
40pub use askit_macros::askit_agent;
41
42pub use agent::{Agent, AgentData, AgentStatus, AsAgent, HasAgentData, agent_new, new_agent_boxed};
43pub use askit::{ASKit, ASKitEvent, ASKitObserver};
44pub use config::{AgentConfigs, AgentConfigsMap};
45pub use context::AgentContext;
46pub use definition::{AgentConfigSpec, AgentConfigSpecs, AgentDefinition, AgentDefinitions};
47pub use error::AgentError;
48pub use output::AgentOutput;
49pub use registry::AgentRegistration;
50pub use spec::{AgentSpec, AgentStream, AgentStreams, ChannelSpec};
51pub use value::{AgentValue, AgentValueMap};