Skip to main content

agent_works/
lib.rs

1#[cfg(feature = "mcp")]
2pub mod mcp;
3
4#[cfg(feature = "skill")]
5pub mod skill;
6
7#[cfg(feature = "cli")]
8pub mod cli;
9
10#[cfg(feature = "focus")]
11pub mod focus;
12
13#[cfg(feature = "multi_agent")]
14pub mod multi_agent;
15
16#[cfg(feature = "compression")]
17pub mod compression;
18
19pub mod guard;
20pub mod prompt;
21pub mod rotation_policy;
22
23mod builder;
24pub mod handle;
25
26#[cfg(feature = "skill")]
27pub use crate::builder::SkillDetailToolFactory;
28pub use crate::builder::{AgentBuilder, build_memory_system_prompt};
29#[cfg(feature = "multi_agent")]
30pub use crate::builder::{
31    MultiAgentToolFactory, build_multi_agent_system_prompt, setup_multi_agent,
32};
33pub use crate::handle::{AgentHandle, SendError};
34pub use crate::prompt::{
35    DynamicToolsFragment, EnvironmentFragment, FragmentContext, PromptFragment, compose_fragments,
36};
37
38#[cfg(feature = "skill")]
39pub use skill::{
40    FullDetailPrompter, LazySkillPrompter, Skill, SkillParam, SkillParamType, SkillRegistry,
41    SkillSummary,
42};
43
44#[cfg(feature = "prompt_skill")]
45pub use skill::prompt_skill::PromptSkill;
46
47#[cfg(feature = "yaml_skill")]
48pub use skill::yaml_skill::YamlSkill;
49
50#[cfg(feature = "fuzzing")]
51pub mod fuzz {
52    #[cfg(feature = "mcp")]
53    pub use super::mcp::server::fuzz_exports as mcp_server;
54    #[cfg(feature = "skill")]
55    pub use super::skill::prompt_skill::fuzz_exports as prompt_skill;
56}