Skip to main content
Submit challenge boxes from a private repository created from the Destrier box template.

Before you submit

Make sure the box is complete and ready to reproduce: You will also need the relevant local tools for your box:
Keep the repository and all challenge materials private during review and after the competition.

Submit your box

1

Sign in

Authenticate with your Destrier account:
2

Lint

Check the manifest and repository structure before building:
string
Optional path to the challenge box directory. Defaults to the current directory.
Fix any reported errors before continuing.
3

Build

Build the hosts declared by the box:
Container hosts are built with Docker. Build any VM disk images with your own VM toolchain before submission; prebuilt VM disk images are uploaded during submission.
4

Test

For container-backed boxes, start the box locally and prove the reference solver captures a declared flag:
boxr box test wires the local network from box.yaml, waits for the entry host health check, and runs solver/solve.py. Use --no-solve to bring the target up without running the solver, or --keep-up to leave it running after the test.Full-machine VM boxes are not tested by this command. Submit them and exercise them with boxr run on the platform.
5

Submit

Submit the completed box for review:
The command publishes source-built container hosts, uploads prebuilt VM disk images, records generated artifact fields, and submits everything outstanding.For a box with exactly one disk-image host, pass --file <path> if the image is not where boxr would normally look.
6

Check status

Track the submission and any associated image uploads:
Run any command with --help to see its available arguments and options:
For top-level CLI commands and environment variables, see CLI.

Validation

Validation checks both box.yaml and the files referenced by it. Local linting uses the same box rules checked by CI, so resolve any failures before submitting for review.

Review process

1

Access

Reviewers confirm that the private repository and any required image artifacts are accessible.
2

Build and start

The declared hosts are built or loaded, the environment starts, and its health checks are verified.
3

Verify the solve

Reviewers inspect or run the reference solver to confirm that the intended capture points can be reached and submitted.
4

Calibrate difficulty

The submitted category and difficulty are reviewed against the actual environment and solve path.
5

Accept the box

Once approved, that version is locked for use in Destrier. Further changes require a new version.

After acceptance

Accepted boxes may still receive feedback related to stability, fairness, or capture verification. Any changes made after acceptance should be submitted as a new version. If Destrier pays for the contribution, a confidentiality agreement may also be required. Do not disclose the box, solver, flags, write-up, or intended solution unless Destrier explicitly approves it.
Last modified on August 13, 2026