pub mod events;
pub mod executor;
pub mod exposure;
pub mod guide;
pub mod orchestrator;
pub mod output_manager;
pub mod parallel;
pub mod permission;
pub mod slash_commands;
#[allow(clippy::module_inception)]
pub mod tools;
pub use executor::{BuiltinToolExecutor, BuiltinToolExecutorBuilder};
pub use bamboo_domain::tool_names::{
is_builtin_tool, normalize_tool_ref, resolve_alias, BUILTIN_TOOL_NAMES,
};
pub use guide::{
context::{GuideBuildContext, GuideLanguage},
EnhancedPromptBuilder, ToolCategory, ToolExample, ToolGuide, ToolGuideSpec,
};
pub use events::{ToolEmitter, ToolEvent, ToolEventPhase};
pub use orchestrator::{
classify_tool, OrchestratorConfig, OrchestratorResult, ToolMutability, ToolOrchestrator,
};
pub use parallel::{ToolCallResult, ToolCallRuntime};
pub use output_manager::{ArtifactRef, ToolOutputManager};
pub use tools::{
BashOutputTool, BashTool, ConclusionWithOptionsTool, EditTool, ExitPlanModeTool, GlobTool,
GrepTool, KillShellTool, NotebookEditTool, ReadTool, SlashCommandTool, TaskTool, ToolRegistry,
WebFetchTool, WebSearchTool, WriteTool,
};
pub use bamboo_domain::{TaskItem, TaskItemStatus, TaskList};
#[cfg(test)]
mod registry_tests;