Alpha · Orkait

Cloud runtime for untrusted code.

Run code you don't trust. 8 languages, 36 ms median, kernel-isolated. Verdicts come back with syscall evidence, not exit-code guesses.

36ms
p50 latency
8
languages
3
kernel layers
Languages
terminal
$ curl -X POST \
https://api.rustbox.sh/api/submit \
-H "X-API-Key: rb_live_****" \
-d '{"language":"python","code":"print(42)"}'
ACAccepted
python · completedruntime / normal_exit
Output
stdout
42
stderr
empty
Timing
CPU time9 ms
Wall time10 ms
CPU/wall0.900
Patterncpu bound
Process
Exit code0
Signalnull
Procs0 / 10
Memory
Peak3.68 MB
Limit256.00 MB
OOM events0
OOM kills0
cgroup CPU9.1 ms
Security
isolationstrict
pid namespacemount namespacenetwork namespacememory limitprocess limitno new privileges
Missingnone
Containmentok
Reapclean
Zombies0
Metadata
Schema1.0
Integritycomplete
Created2026-04-03 08:05:23Z
Started2026-04-03 08:05:23Z
Completed2026-04-03 08:05:23Z
id: f2c6c5f7-1203-46e5-8a4f-a619c12bfeb0
Have a key? Open playground
Product

Two profiles. Judge mode live now.

One API. Two isolation profiles. Your key picks which one.

Assessment Platform
[2026] Compiling solution...queued
#include <iostream>
using namespace std;

int main() {
  int n; cin >> n;
  // O(N) solution
  long long sum = 0;
  for(int i=1; i<=n; i++)
    sum += i;
  cout << sum;
  return 0;
}
Rustbox Kernel
ISO-LEVEL: 4
Rustbox Logo
Running tests...
LIMIT
4s CPU
RAM
256 MB
NET
Off
Execution Verdict
Test Suite Execution
WA
Test #112ms
Test #218ms
Test #3Wrong Answer
Judge
Open Beta

Competitive programming, coding assessments, automated grading.

256 MBMemory7sWall4sCPU10Procs
No network, no loopback, no DNS
Agent
On Request

LLM tool execution, interactive environments, long-running tasks.

2 GBMemory60sWall30sCPU64Procs
Outbound-only via nftables
8 languages supported
Playground

Run code before wiring the API.

Same sandbox, same verdict shape your API will see. Try Python, paste C++, pipe stdin. No signup.

Security

Eight kernel layers between the code and your box.

Fresh sandbox per run. Verdicts backed by syscall trace, not exit-code guesses.

8kernel layers

8 kernel isolation layers

PID, mount, and network namespaces; cgroups v2; seccomp-BPF; capability drop; credential isolation; NO_NEW_PRIVS.

51seccomp rules

Compile-time enforced

Rust typestate chain guarantees order at language level. Skip an isolation configuration and it will refuse to compile.

147adversarial tests

Tested against real attacks

147 adversarial scenarios across all 8 Judge languages cover fork bombs, chroot escapes, ptrace, network attempts, and symlink attacks.

Interactive Threat Simulator

Step through the isolation layers and see which kernel primitive contains each attack vector.

PID NSMount NS + ChrootNetwork NSCgroups v2Seccomp-BPFCapability DropCredential IsolationNO_NEW_PRIVS
Active Audit sequence
REPrivilege Escalation
caught at NO_NEW_PRIVS
pythonPOST /api/submit?wait=true
import os
os.setuid(0)
print(os.getuid())
Cause
re_nonzero_exit
Cgroup
cgroup_v2
Isolation
strict
Controls applied · 6/6
pid_namespacemount_namespacenetwork_namespacememory_limitprocess_limitno_new_privileges
Performance

59 ms median.

Full kernel isolation, in-region origin. P50 across 15 trials.

n = 500,000
  • Python
    62 ms
    tail 102
  • JavaScript
    59 ms
    tail 100
  • TypeScript
    62 ms
    tail 101
  • C
    102 ms
    tail 142
  • C++
    308 ms
    tail 309
  • Java
    474 ms
    tail 476
15 trials · async + /result?wait=true1 vCPU · 256 MB per task · in-region
API

First result in 60 seconds.

Raw HTTP or our SDK in Python, Node, Go, or Rust. Same structured response.

submit.sh
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)"}'
Output · wall 20 ms · cpu 13 ms
AC · Accepted
{
  "id": "02128880-a3a1-4025-ab89-f4d7ef3520de",
  "verdict": "AC",
  "stdout": "42\n",
  "stderr": "",
  "exit_code": 0,
  "wall_time_secs": 0.020,
  "cpu_time_secs": 0.013,
  "memory_peak_bytes": 3715072,
  "language": "python",
  "profile": "judge",
  "output_integrity": "complete",
  "evidence": { "...": "12 more keys" }
}

Ship your first request →

Pricing
$0/mo

Judge only. 5,000 runs / mo. No card needed.

Judge
5,000 runs / mo
Hard cap (no overage)
  • 20 req/min burst
  • All 8 languages
  • Kernel-backed evidence
  • Community support
  • Usage dashboard
$14/mo

For hobby projects and side products.

Judge
50,000 runs / mo
+$5 / 25k extra
40 req/min burst
Agent
1,000 CPU-min / mo
+$1 / 1k CPU-min extra
2 req/min burst
  • Everything in Free plus:
  • API keys
  • Email support
popular
$39/mo

Production-ready. Predictable monthly bill.

Judge
150,000 runs / mo
+$5 / 50k extra
60 req/min burst
Agent
5,000 CPU-min / mo
+$1 / 1k CPU-min extra
5 req/min burst · 1 GB memory · 60s wall
  • Everything in Lite plus:
  • Priority queue
  • Sync verdicts
  • Webhook delivery
Larger scale
Scale$149/mo
Start Scale
Judge
1,500,000 runs / mo
+$5 / 50k extra
Agent
50,000 CPU-min / mo
+$1 / 1k CPU-min extra
Larger or custom
Enterprise
Contact sales
Judge
Custom volume
Contract pricing
Agent
Custom CPU-min volume
Contract pricing
Cancel anytime·No card for Free·Kernel-isolated sandbox·50 ms p50

Billing questions

What if I go over my plan?
Auto-billed at your tier's overage rate on the next monthly invoice. Set a monthly spending cap in the dashboard to prevent surprise bills.
Can I cancel anytime?
Yes. Cancel mid-month with no fee. You keep access until the current billing period ends.
What payment methods?
Card via Stripe on Lite / Pro / Scale. Wire transfer or ACH on Enterprise.
Free trial of paid plans?
No separate trial. Free tier is forever free with 5,000 judge runs per month. No card required to start.
FAQ

Questions before you wire it in.

Short answers to the constraints that usually matter when adding sandbox execution to a product.

Need a specific answer?

Send the workload shape, expected volume, language mix, and security requirements through the contact page.