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 id;
15mod message;
16mod output;
17mod registry;
18mod runtime;
19mod spec;
20mod stream;
21pub mod test_utils;
22mod value;
23
24// re-export async_trait
25pub use async_trait::async_trait;
26
27// re-export photon_rs
28#[cfg(feature = "image")]
29pub use photon_rs::{self, PhotonImage};
30
31// Re-export the crate under its canonical name for proc-macros.
32pub extern crate self as agent_stream_kit;
33pub use inventory;
34
35// re-export FnvIndexMap
36pub use fnv;
37pub use indexmap;
38pub type FnvIndexMap<K, V> = indexmap::IndexMap<K, V, fnv::FnvBuildHasher>;
39pub type FnvIndexSet<T> = indexmap::IndexSet<T, fnv::FnvBuildHasher>;
40
41// Re-exports askit_macros
42pub use askit_macros::askit_agent;
43
44pub use agent::{Agent, AgentData, AgentStatus, AsAgent, HasAgentData, agent_new, new_agent_boxed};
45pub use askit::{ASKit, ASKitEvent, ASKitObserver};
46pub use config::{AgentConfigs, AgentConfigsMap};
47pub use context::AgentContext;
48pub use definition::{AgentConfigSpec, AgentConfigSpecs, AgentDefinition, AgentDefinitions};
49pub use error::AgentError;
50pub use output::AgentOutput;
51pub use registry::AgentRegistration;
52pub use spec::{AgentSpec, AgentStreamSpec, AgentStreamSpecs, ChannelSpec};
53pub use stream::{AgentStream, AgentStreamInfo, AgentStreams};
54pub use value::{AgentValue, AgentValueMap};