Run it on your own GPU.

The studio runs on our demo server by default. Deploy your own copy in about ten minutes, then point the studio at it. Your runs, models and keys stay in your account.

You need
A Modal account, or a CUDA GPU with 40 GB+
For the agents
A Baseten API key (optional)
Cost
~$4 per H100-hour while a run is going. Idle is free.
1

Choose where it runs

2

Add your Baseten key

Muse Spark agents diagnose failures and write guardrails through it. Skip it to run without agents. The key only fills in the command below and never leaves this tab.

3

Run these commands

In a terminal on your laptop. The last line prints your API address, ending in --embodied-ci-api.modal.run. Copy it for step 4.

shell
git clone https://github.com/perfect7613/embodied-ci && cd embodied-ci
uv sync                                   # install
uv run modal setup                        # sign in to Modal (opens your browser)
umask 077 && printf 'BASETEN_API_KEY=%s\nBASETEN_MODEL=%s\n' '<your-baseten-key>' 'meta-models/muse-spark-open-1026' > .env
uv run modal deploy infra/modal_app.py    # prints your API address
4

Connect the studio

Paste the address. The studio checks it answers, then uses it in this browser.

Studio is using the demo serverOpen studio →
› Advanced
Post-train a guardrail writer

A GRPO job (Qwen3-4B, LoRA) on Baseten Training, rewarded by the gate's own rules on your logged episodes. Needs a key with Training access.

shell
uv run modal run -m posttrain.build_dataset   # failure clusters + replay steps -> data/train.jsonl
cd posttrain/baseten_grpo
uv run truss login                              # a key with Baseten Training access
uv run truss train push config.py