Free
$0/mo
Judge only. 5,000 runs a month. No credit card.
Start freeJudge
5,000 runs / mo
Stops at the limit, never charges extra
- Up to 20 requests a minute
- All 8 languages
- Proof of every protection
- Community support
- Usage dashboard
Open betaby Orkait
Run code you don't trust in a fresh, locked-down box. Get the result in about 70 ms, with proof of everything the code tried to do.
Free plan: 5,000 runs a month. No credit card.
8layers of protection
Your code gets its own processes and files, no internet, capped memory and CPU, and no admin powers. All eight are in place before the first line runs.
51risky actions blocked
We switch off 51 dangerous requests that ordinary programs never make. rustbox won't even build if a safety step is missing.
147attack tests
Programs that copy themselves forever, try to leave their folder, spy on other programs, reach the internet or follow trick file links. In all eight languages.
01 · Inside the box
The run above was a well-behaved program. Scroll through one that fights back: four break-out attempts, the four protections that stop them, and the result you get back.
waiting for code
Example run. Which protection stops which attack comes from the rustbox docs.
01Send
Send the language and your code. Ask rustbox to wait, and the result comes back on the same request, within 30 seconds.
02Lock
Your code gets its own processes and its own files, no internet, capped memory and CPU, and 51 risky actions switched off. It runs as a normal user with no admin powers and no way to gain them. rustbox won't even build if one of these steps is missing.
03Run
This program tries to read the password file, reach the cloud's secret address, become admin and copy itself without end. Private files, no internet, the normal user account and the resource limits stop each one in turn.
04Result
Stopped for starting too many processes, with the counts that prove it. rustbox reads what really happened inside the box, like memory running out or a limit being hit. It never guesses from how the program exited.
05Clean up
Every process is stopped and rustbox checks that nothing is left behind. The next run starts in a fresh box.
02 · Playground
The same box and the same results your API calls get. Try Python, paste in C++, give it some input. No signup.
03 · Speed
Time from sending the code to getting the result, with every protection on. For C, C++ and Java it includes compiling.
15 runs each · 1 CPU · 256 MB memory · sent from the same region
04 · API
Plain HTTP or a library for Python, TypeScript, Go or Rust. Same request, same response.
Open playgroundAPI reference01
The Free plan includes 5,000 runs a month. No credit card.
02
Send the language, your code and any input to /api/submit. Add ?wait=true to get the result on the same request, within 30 seconds.
03
One JSON response with the result, the reason, the output, the timing and proof of every protection.
curl -X POST https://api.rustbox.sh/api/submit?wait=true \
-H 'x-api-key: rb_live_…' \
-H 'content-type: application/json' \
-d '{"language":"python","code":"print(42)"}'Result codes
Test case results
{
"id": "02128880-a3a1-4025-ab89-f4d7ef3520de",
"schema_version": "2.0",
"language": "python",
"profile": "judge",
"status": "completed",
"result": { "verdict": "AC", "cause": "normal_exit",
"actor": "runtime", "exit_code": 0 },
"output": { "stdout": "42\n", "stderr": "" },
"metrics": { "cpu_time_secs": 0.013, "wall_time_secs": 0.020 },
"evidence": { "isolation": { … }, "teardown": { … } }
}05 · Pricing
Prices in USD per month. Go over your plan and the extra runs are billed at your plan's rate on the next invoice. A monthly spending cap stops surprise bills.
$0/mo
Judge only. 5,000 runs a month. No credit card.
Start freeJudge
5,000 runs / mo
Stops at the limit, never charges extra
$9/mo
For hobby projects and side products.
Start LiteJudge
50,000 runs / mo
+$5 per 25,000 extra runs
$29/mo
Ready for production, with a predictable monthly bill.
Start ProJudge
150,000 runs / mo
+$5 per 50,000 extra runs
Cancel anytime · No credit card for FreeCompare all plans
06 · FAQ
Short answers to what usually matters when you add rustbox to a product.
A safe place to run code you don't trust. Send a program and its test cases. Each test case comes back with its result (right answer, wrong answer, too slow, crashed and so on), proof of the protections and the timing, in the same shape every time.
Python, JavaScript, TypeScript, C, C++, Java, Go, Rust.
No. The code has no internet and no local network, so it can't look up answers or reach anything else.
The beta is free, with usage limits. Paid plans are a flat monthly price that includes a set number of runs. Extra runs are billed per 1,000. No surprise per-call bills.
Yes. Send each answer the model writes, with its test cases, to /api/judge. The share of test cases it passes is its score, from 0 to 1. The expected answers never go inside the box. See Rewards for RL in the docs.
$ curl -X POST https://api.rustbox.sh/api/submit?wait=true
Get back the result and a full record of what it tried, in one API call. Free for 5,000 runs a month, no credit card.