Summary
adk evals runs --format json ignores --format and prints the human-readable, ANSI-coloured listing instead of JSON. The flag is documented in the subcommand's own help output.
Versions
adk CLI 2.0.3, @botpress/evals 2.0.3, Linux, node 26.
Reproduction
$ adk evals runs --help
...
Options
--latest Show the latest run
--limit <n> Max runs to list
-v, --verbose Show full details for all evals in a run
--format <format> output format (json)
$ adk evals runs --latest --format json | head -c 200 | cat -v
^[[1mRun^[[22m 3141202d4a4a41bfa470ea84fe
^[[90m7/25/2026, 4:34:07 PM^[[0m
^[[31mM-bM-^\M-^W^[[0m ^[[1mstate-probe-multiturn^[[0m^[[22m ^[[90m10.1s^[[0m ^[[90m3/6 assertions^[[0m ...
Same with -v, and the same when redirected to a file rather than a pipe (so it is not the stdout-flush issue in #38):
$ adk evals runs --latest --format json -v > out.json; node -e "JSON.parse(require('fs').readFileSync('out.json','utf8'))"
SyntaxError: Unexpected token '', "
[1mRun[2"... is not valid JSON
ANSI escapes are emitted even when stdout is not a TTY.
Expected
Either the documented JSON document on stdout, or — if JSON output was never implemented for this subcommand — remove --format from its help so it does not advertise a mode it lacks.
Why it matters
adk evals --format json works, so run history is the only way to recover a report you did not redirect at the time, and it cannot be consumed programmatically. Minor on its own; noting it because it also blocked a re-test of #38 — the 104-eval report here is ~970 KB, and runs was the only way to re-emit a payload that large without paying for another suite run.
Found while investigating #40.
Summary
adk evals runs --format jsonignores--formatand prints the human-readable, ANSI-coloured listing instead of JSON. The flag is documented in the subcommand's own help output.Versions
adkCLI 2.0.3,@botpress/evals2.0.3, Linux, node 26.Reproduction
Same with
-v, and the same when redirected to a file rather than a pipe (so it is not the stdout-flush issue in #38):ANSI escapes are emitted even when stdout is not a TTY.
Expected
Either the documented JSON document on stdout, or — if JSON output was never implemented for this subcommand — remove
--formatfrom its help so it does not advertise a mode it lacks.Why it matters
adk evals --format jsonworks, so run history is the only way to recover a report you did not redirect at the time, and it cannot be consumed programmatically. Minor on its own; noting it because it also blocked a re-test of #38 — the 104-eval report here is ~970 KB, andrunswas the only way to re-emit a payload that large without paying for another suite run.Found while investigating #40.