1#![forbid(unsafe_code)]
2#![deny(missing_docs)]
3
4mod audit;
39mod effect;
40#[cfg(feature = "execution")]
41mod executor;
42mod invocation;
43#[cfg(feature = "execution")]
44mod registry;
45mod resource;
46mod result;
47#[cfg(feature = "schema")]
48mod schema;
49mod source;
50mod spec;
51
52pub use audit::{
53 TOOL_AUDIT_METADATA_NAMESPACE, ToolAuditMetadata, ToolAuditMetadataError, ToolAuditResource,
54};
55pub use effect::{ToolEffect, ToolEffectParseError};
56#[cfg(feature = "execution")]
57pub use executor::{
58 BoxToolExecutionStream, ToolExecutionEvent, ToolExecutionStream, ToolExecutor, ToolProgress,
59 ToolStreamValidator, ToolStreamViolation,
60};
61pub use invocation::{ToolInvocation, ToolInvocationError, ValidatedToolInvocation};
62#[cfg(all(feature = "execution", feature = "model-projection"))]
63pub use registry::ToolRoutePreference;
64#[cfg(feature = "execution")]
65pub use registry::{ToolBinding, ToolRegistry, ToolRegistryError};
66pub use resource::{
67 ArgumentResourceResolver, MAX_TOOL_RESOURCES, StaticResourceResolver, ToolResource,
68 ToolResourceAccess, ToolResourceError, ToolResourceResolver,
69};
70pub use result::{ToolExecutionFailure, ToolExecutionFailureCode, ToolResult, ToolResultError};
71#[cfg(feature = "schema")]
72pub use schema::{
73 CompiledToolSchema, MAX_SCHEMA_ERRORS, MAX_TOOL_VALUE_BYTES, MAX_TOOL_VALUE_DEPTH,
74 SchemaCompilationError, SchemaValidationError, SchemaValidationFailure,
75};
76pub use source::{ToolSource, ToolSourceError, ToolSourceKind, ToolTrust};
77pub use spec::{
78 SchedulerClass, ToolConcurrency, ToolExecutionSemantics, ToolIdentityParseError, ToolName,
79 ToolRetrySafety, ToolSpec, ToolSpecError, ToolTimeout, ToolVersion,
80};