pub struct ToolConfig {
pub id: String,
pub enabled: SwitchPosition,
pub confirm_preview: bool,
pub executable_path: Option<Path<'static>>,
pub manifest_path: Path<'static>,
pub manifest: Option<ToolManifest>,
pub prompts: BTreeMap<String, PromptConfig>,
pub timeout: Option<Duration>,
}Expand description
Configuration for a single tool declared in tools.conf.
Tools are external executables that speak the sid tool protocol. The manifest JSON supplies the Anthropic API with a description and JSON-Schema input definition, while the executable path locates the binary that actually runs each invocation.
Fields§
§id: StringTool identifier (the rc.conf service name after alias resolution).
enabled: SwitchPositionWhether the tool is enabled, disabled, or requires manual confirmation.
confirm_preview: boolWhen true, the harness shows a diff preview before executing write operations.
executable_path: Option<Path<'static>>Filesystem path to the tool executable, or None for built-in tools.
manifest_path: Path<'static>Filesystem path to the tool’s manifest JSON file.
manifest: Option<ToolManifest>Parsed manifest, or None when the manifest is optional and absent.
prompts: BTreeMap<String, PromptConfig>Additional named markdown prompts loaded for the tool.
timeout: Option<Duration>Maximum execution time, or None for no timeout.
Defaults to DEFAULT_TOOL_TIMEOUT when omitted in tools.conf.
Set TIMEOUT="0" in tools.conf to disable the timeout for a tool.