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 flow;
15mod message;
16mod output;
17mod registry;
18mod runtime;
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::{
43    Agent, AgentData, AgentSpec, AgentStatus, AsAgent, HasAgentData, agent_new, new_agent_boxed,
44};
45pub use askit::{ASKit, ASKitEvent, ASKitObserver};
46pub use config::{AgentConfigs, AgentConfigsMap};
47pub use context::AgentContext;
48pub use definition::{
49    AgentConfigSpec, AgentConfigSpecs, AgentDefinition, AgentDefinitions, AgentDisplayConfigSpec,
50};
51pub use error::AgentError;
52pub use flow::{AgentFlow, AgentFlowEdge, AgentFlowNode, AgentFlows};
53pub use output::AgentOutput;
54pub use registry::AgentRegistration;
55pub use value::{AgentValue, AgentValueMap};