Skip to main content

Module provider_tool

Module provider_tool 

Source
Expand description

Tools that are a provider’s own tools, and the safety checks a driver attaches to a call.

A runtime: tool artifact whose bundled murmur.yaml declares provider_tool: (murmur_artifact::ProviderTool) is one the model’s provider defines itself, of a kind in ProviderToolKind::ALL. The runtime reads the block, checks it, and passes it to the driver on the tool’s tool-array entry. It names no provider: which tool a driver sends for the block is the driver’s to decide.

Declaring one constrains the launch:

TermRefusal
the effective declared containment floor is sealedE-CAP-003, RuntimeError::ProviderToolRequiresSealed
no transport: http driver choice runs a model its driver marks vision: falseE-RUN-057, RuntimeError::ProviderToolNeedsVision
the block parsesE-RUN-058, RuntimeError::ProviderToolMalformed

A runtime pull of such a tool is refused on the first two terms ([ProviderToolTerms]). When a sealed capsule is refused because the host cannot back it (E-CAP-003) or cannot give its subprocess tree a network namespace (E-CAP-005), the refusal names each declared provider tool with a required by: line (required_by_lines).

A driver may attach safety_checks to a tool_call block ([read_safety_checks]). The agent loop then asks the person before the call runs ([ask_safety_checks]); only a reply that is one of [ACKNOWLEDGING_REPLIES] runs it.

Structs§

NoVisionChoice
A driver choice whose driver marks its model vision: false.
ProviderToolUse
One declared tool that is a provider tool: its tool name and its kind.

Functions§

required_by_lines
One required by: line per tool, each on its own line under a refusal’s message, or "" for none: the suffix E-CAP-003 and E-CAP-005 append to their message.