Skip to main content

kaish_kernel/tools/
mod.rs

1//! Tool system for kaish.
2//!
3//! Tools are the primary way to perform actions in kaish. Every command
4//! is a tool — builtins, user-defined tools, and MCP tools all implement
5//! the same `Tool` trait.
6//!
7//! # Architecture
8//!
9//! ```text
10//! ToolRegistry
11//! ├── Builtins (echo, ls, cat, ...)
12//! ├── User Tools (defined via `tool` statements)
13//! └── MCP Tools (from connected MCP servers)
14//! ```
15
16mod builtin;
17mod context;
18mod registry;
19mod traits;
20
21pub use builtin::{register_builtins, resolve_in_path};
22pub use context::{ExecContext, OutputContext};
23pub use registry::ToolRegistry;
24pub use traits::{extract_output_format, is_global_output_flag, validate_against_schema, Tool, ToolArgs, ToolSchema, ParamSchema};