Skip to main content

sparrow/tools/
mod.rs

1//! Tools layer. The tool registry (`Tool` trait, `Registry`, `ToolResult`,
2//! `ToolCtx`) and most tool implementations (fs, edit, search, web, browser,
3//! git, exec, todo, media, code-nav, the memory tool…) live in the
4//! `sparrow-tools` crate so the heavy tool code compiles once and is cached.
5//! Re-exported here so existing `crate::tools::*` imports keep working.
6//!
7//! `extras` and `subagent` stay in the binary crate: they sit at the top of the
8//! dependency graph (they hold an `Arc<Engine>`, spawn sub-agents via the
9//! `Engine`/`Router`, and carry `gateway::GatewayResponse`), which would create
10//! cycles if pulled below the engine.
11
12pub use sparrow_tools::*;
13
14pub mod extras;
15pub mod subagent;