pub mod approval;
pub mod events;
pub mod executor;
pub mod exposure;
pub mod guide;
pub mod local_task_resources;
pub use local_task_resources::{
DrainedLocalTaskResources, LocalTaskResourceIdentity, LocalTaskResources,
};
pub mod orchestrator;
pub mod output_manager;
pub mod parallel;
mod permission_override;
pub use bamboo_permission as permission;
pub mod slash_commands;
pub mod tool_search;
#[allow(clippy::module_inception)]
pub mod tools;
pub use executor::{BuiltinToolExecutor, BuiltinToolExecutorBuilder};
pub use approval::{current_approval_proxy, with_approval_proxy, ApprovalAsk, ApprovalProxy};
pub use permission_override::{
current_hook_permission_override, with_hook_permission_override, HookPermissionOverride,
};
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::{
BashInputTool, BashOutputTool, BashTool, EditTool, ExitPlanModeTool, GlobTool, GrepTool,
KillShellTool, ReadTool, TaskTool, ToolRegistry, ViewImageTool, WebFetchTool, WriteTool,
};
pub use bamboo_domain::{TaskItem, TaskItemStatus, TaskList};
#[cfg(test)]
mod registry_tests;