Tool Contract
An explicit agreement between an agent and a tool concerning invocation methods, input parameters, output formats, and error semantics, typically provided to the model as a structured description such as JSON Schema. It directly affects the accuracy of tool calls and the agent's ability to correct errors autonomously.
Timeline (last 90 days)
When a tool fails, it should return a readable reason for the failure to help the agent self-correct, rather than repeatedly retrying on the wrong path.
A tool contract is an explicit agreement between the agent and the tool regarding the invocation method, input parameters, output format, and error semantics, usually provided to the model in the form of a structured description (such as JSON Schema).
A durable and reliable Agent system needs a three-piece kernel: memory storage, tool contracts, and guardrails; everything else (planning loops, reasoning chains, meta-prompting) is upper-layer scaffolding that can be replaced independently.
A tool contract defines not only the tool's functional signature but also the complete behavioral specification upon failure, including timeout thresholds, retry budgets, fallback outputs, and error classification (retryable vs permanent).
When an LLM node returns malformed JSON, the tool contract specifies not to retry indefinitely, but instead to log the error, skip that record, and mark the number of skipped records in the summary.
Tool calls should follow the contract principle: failures must raise errors, and silently swallowing exceptions is never allowed.
All Facts (6)
When a tool fails, it should return a readable reason for the failure to help the agent self-correct, rather than repeatedly retrying on the wrong path.
50%UnverifiedA tool contract is an explicit agreement between the agent and the tool regarding the invocation method, input parameters, output format, and error semantics, usually provided to the model in the form of a structured description (such as JSON Schema).
50%UnverifiedA durable and reliable Agent system needs a three-piece kernel: memory storage, tool contracts, and guardrails; everything else (planning loops, reasoning chains, meta-prompting) is upper-layer scaffolding that can be replaced independently.
50%UnverifiedA tool contract defines not only the tool's functional signature but also the complete behavioral specification upon failure, including timeout thresholds, retry budgets, fallback outputs, and error classification (retryable vs permanent).
50%UnverifiedWhen an LLM node returns malformed JSON, the tool contract specifies not to retry indefinitely, but instead to log the error, skip that record, and mark the number of skipped records in the summary.
50%UnverifiedTool calls should follow the contract principle: failures must raise errors, and silently swallowing exceptions is never allowed.
50%