Skip to main content

The headline and the first rows

A result is one verdict per row and question. When a run finishes, the CLI prints one line with the totals and then the first twenty matched rows:
Each row shows the conversation or trace, the answer with its probability, such as yes (0.94), and the start of the judged text. Copy the command on the last line to read the rest, and pass --show 25 to print up to twenty five rows instead of twenty.

Every verdict

Use results to page through the run’s verdicts, one per row and question. Narrow it with:
  • --question annoyed: one question only
  • --matched or --unmatched: the yes or no verdicts that matched, or the ones that did not
  • --status skipped: only judged, skipped or failed rows
You get up to 1,000 verdicts per page, and the last line prints the --cursor value to pass for the next page. Page by cursor while a run is still writing: you neither see a verdict twice nor skip one. In -o json a verdict looks like this:

What did the judge read

sample prints the text the judge read for a few rows, beside the verdict each one got:
The rows are re-read through the run’s own statement, so no row is judged again and you are not charged. A run with a yes or no question shows matched rows first, and the rows differ between calls, so run it a few times to read both sides of the line. The judged text is not stored with the verdict, so sample is how you read it.

The judgments dataset

Every verdict is a row in the judgments view of LangWatchQL, kept until you delete the project. Join it to traces on TraceId to read verdicts beside anything else you know about the trace:
langwatch query reference lists the columns with their types, and GET /api/v1/query/schema returns the same over REST.

Rows the judge did not answer

Read the run and look at the Unjudged line:
Pass --status skipped or --status failed to results to read those rows. To judge them, run your own statement over those trace ids.
Last modified on September 19, 2026