Definition
Plain language
A required state that has to be true before an action is allowed to run.
As stated in the literature
In contract-based systems, a state predicate that a tool or function requires of the environment before invocation; violations cause static rejection of a plan.
Also called: postcondition, preconditions, postconditions
Why it matters: Explicit preconditions let plans be statically checked, catching impossible actions before they're attempted.
For example, a 'send_message' tool's precondition might require that the user is logged in and the channel exists.
Heard on the show
“" Except it wasn't — a precondition got dropped when the task list was flattened into text, and the environment still had that task sitting at pending.”Episode 182 — How a Tiny Model Too Weak to Plan Cuts a Bigger Agent's Hallucinations by 80%