Evaluate Condition • AI Agent SDK

evaluate_condition: Evaluate a condition expression with variable substitution.

evaluate_condition

Function

</div>

This function is defined in the evaluator module.

Evaluate a condition expression with variable substitution.

This is the shared condition evaluation function used by both AgentFlow and AgentTeam. It supports various condition formats.

Supported formats: – Numeric comparison: “&#123;&#123;var&#125;&#125; &gt; 80”, “&#123;&#123;var&#125;&#125; &gt;= 50”, “&#123;&#123;var&#125;&#125; &lt; 10” – String equality: “&#123;&#123;var&#125;&#125; == approved”, “&#123;&#123;var&#125;&#125; != rejected” – Contains check: “error in &#123;&#123;message&#125;&#125;”, “&#123;&#123;status&#125;&#125; contains success” – Boolean: “&#123;&#123;flag&#125;&#125;” (truthy check) – Nested property: “&#123;&#123;item.score&#125;&#125; &gt;= 60”

Signature

python
def evaluate_condition(condition: str, variables: Dict[str, Any], previous_output: Optional[str]) -> bool

Parameters

ParamField str

Condition expression with &#123;&#123;var&#125;&#125; placeholders.

ParamField Dict[str, Any]

Dictionary containing variables for substitution.

ParamField Optional[str]

Optional output from previous step (substitutes &#123;&#123;previous_output&#125;&#125;).

Returns

ResponseField bool

Boolean result of condition evaluation. Returns False on evaluation errors (fail-safe).

Usage

python
result = evaluate_condition("{{score}} > 80", {"score": 90})  # True
    result = evaluate_condition("{{status}} == approved", {"status": "approved"})  # True
    result = evaluate_condition("error in {{message}}", {"message": "An error occurred"})  # True

Uses

  • re.findall
  • get_nested_value
  • re.search
  • re.match
  • numeric_match.group
  • string_match.group
  • logger.warning

Used By

Source

View on GitHub

praisonaiagents/conditions/evaluator.py at line 128


Related Documentation