Draft it from a description
- Go to Analyze → eval authoring and select new eval.
- Describe what to measure in plain English, or choose from start from an example…, and select draft.
- Review the fields and the code it fills in, then test it and deploy it.

Set the fields
Use the condition to scope an evaluation to the agents and environments it is meant for:
Write the code yourself
The evaluator code is one Python expression that returnsEvalResult(...), with session in scope. This one scores the share of tool results that came back ok:
score= for a score evaluation, or a metrics or assertions entry named after the key for a metric or an assertion evaluation. Other metrics and assertions ride along with it, up to 25 results in a run.
Nothing else is reachable: no imports, and no attributes beyond that session data and plain string and dictionary methods such as
get, lower, and split, which must be called rather than referenced. Payload keys are whatever your agents send — status above is only an example — so read them off a real session. format tidies the code and fix asks the assistant to repair it. The code can be up to 128 KiB, and the condition up to 16 KiB.


