Public declaration syntax from forge-rs/crates/forge-agent/src/lib.rs Original source SHA-256: 9ed2d7c04865c5d9d24374495ca8870a865cfd97dbf51bb9d1630bc98204345f Function bodies and constant values are omitted. This is not the complete implementation. Source line 59 pub mod agent; Source line 60 pub mod cambium; Source line 61 pub mod context_manager; Source line 62 pub mod error; Source line 63 pub mod loop_control; Source line 65 #[cfg(not(target_arch = "wasm32"))] pub mod messaging; Source line 66 pub mod observer; Source line 67 pub mod streaming_tool_loop; Source line 68 pub mod subagent; Source line 69 pub mod tool_loop; Source line 70 pub mod workflow; Source line 81 pub mod prelude; Source line 83 #[cfg(not(target_arch = "wasm32"))] pub use crate::agent::AegisProviderAuthorityVerifier; Source line 84 pub use crate::agent::{ Agent, AgentCheckpointValidationError, AgentConfig, AgentEvent, AgentOutput, AgentRunCheckpoint, BoundaryContract, CodingProviderPreflight, ModelInferenceRecord, ProviderAuthorityVerifier, ProviderIdentityVerification, SubAgentDelegationRecord, ToolInvocationRecord, ToolInvocationStatus, AGENT_RUN_CHECKPOINT_SCHEMA, }; Source line 90 pub use crate::cambium::{ CambiumAgentLoopObserver, CambiumEvent, CambiumJson, CambiumScope, ForgeCambiumObserverConfig, }; Source line 94 pub use crate::context_manager::{ContextWindowConfig, ContextWindowManager, PruningStrategy}; Source line 95 pub use crate::error::{ForgeAgentError, ForgeAgentResult}; Source line 96 pub use crate::loop_control::{ AgentStopCondition, NoOpPrepare, PrepareStep, StopWhen, StopWhenCustom, StopWhenMaxSteps, StopWhenTextGenerated, StopWhenToolCalled, }; Source line 101 #[cfg(not(target_arch = "wasm32"))] pub use crate::messaging::{ AgentChannel, AgentChannelReceiver, AgentChannelSender, AgentMessage, }; Source line 104 pub use crate::observer::{AgentLoopObserver, NoOpObserver}; Source line 105 pub use crate::streaming_tool_loop::{StreamingLoopConfig, StreamingToolLoopAgent}; Source line 106 pub use crate::subagent::{ create_subagent, create_subagent_with_observer, SubAgentConfig, SubAgentDelegationContext, }; Source line 109 pub use crate::tool_loop::ToolLoopAgent; Source line 110 pub use crate::workflow::{ ParallelWorkflow, RouterWorkflow, SequentialWorkflow, WorkflowOutput, };