results

A command for reading the structured test summary from a previously recorded command run. JUnit XML is a standard file format that stores automated test results.

In plain words
What is it for?
Use it after recording a run with crabbox to display all results, show only failed tests, or return the summary as JSON.
Why use it?
It lets you see whether tests passed and which cases failed without searching through the full command log. The results come from the saved run, so a coordinator must be configured.

Command

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add commands/openclaw/crabbox/results
Clone the repo
git clone --depth 1 https://github.com/openclaw/crabbox
Per session 0 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,259 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00000 $0.01259
Opus 5 $0.00000 $0.00629
Sonnet 5 $0.00000 $0.00252
Haiku 4.5 $0.00000 $0.00126

Measured 3d ago against content hash 9506cc0bd3bd, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

results scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

docs/commands/results.md · 159 lines

How it starts

The opening of the file, as written. The whole thing — 159 lines — stays where its author put it; the contents beside it link to each section on GitHub.

results

crabbox results prints the structured test summary attached to a recorded run. It answers "did the suite pass, and which cases failed?" without making you page through the raw command log.

# Record a run, then read its results.
crabbox run --junit junit.xml -- go test ./...
crabbox results run_abcdef123456
crabbox results run_abcdef123456 --failed-only
crabbox results run_abcdef123456 --json

The run id is accepted as a positional argument or via --id. A coordinator must be configured (CRABBOX_COORDINATOR or config set-broker), because results are read back from the recorded run, not from the live box.

How results get attached

Results are attached only when crabbox run knows where to find remote JUnit XML after the command exits. There are three ways to point it at the files.

On the command line:

crabbox run --junit junit.xml -- <command...>
crabbox run --junit junit.xml,reports/junit.xml -- <command...>
crabbox run --junit junit.xml --fail-on-test-failures -- <command...>

In repo config:

results:
  junit:
    - junit.xml
    - reports/junit.xml
  failOnFailures: true

Or let run scan common JUnit locations after the command:

crabbox run --results-auto -- <command...>
results:
  auto: true

You can also set CRABBOX_RESULTS_JUNIT (comma-separated paths), CRABBOX_RESULTS_AUTO, and CRABBOX_RESULTS_FAIL_ON_FAILURES in the environment.

After the command finishes, the CLI reads each remote file from the workdir, parses the JUnit XML, and sends only the parsed summary to the coordinator. Raw XML is never stored. Multiple JUnit files are merged into one summary, so a multi-report setup still produces a single result record. Bad files produce named warnings without erasing valid summaries. Auto discovery accepts files up to 16 MiB and 64 MiB total; it skips larger reports explicitly instead of truncating them into invalid XML.

By default, result parsing does not replace the wrapped command's exit status. With --fail-on-test-failures or results.failOnFailures: true, a command that exits zero but produces parsed JUnit failures or errors becomes a failed run with exit code 1. An existing command failure keeps its original exit code.

Read the full file on GitHub · 159 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 159 lines · 0 tokens per session scan A 9506cc0bd3bd

Subscribe to this mod's changes

results is a command published in the GitHub repository openclaw/crabbox (1,343 stars, last pushed 3d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 1,259 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.