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
“The authors do an analysis of four other code-graph platforms — Sourcegraph, Semgrep, CodeQL, Qodana — and argue that the same preconditions exist there.”Episode 039 — When Smarter Agents Get Fooled by Three Extra Nodes in a Database