MooseRunner markMooseRunner
Log inTry free
Agent-firstUnity test runner

Write, run, and
debug tests in Unity.

Stop hand-running tests and shipping bugs you could've caught. Your coding agent writes, runs, and debugs Unity tests — multiplayer included — and you step in only when it counts.

No risk. The first 30 days are on us.
AI agent
Claude Code · Codex
write & edit · with MCPs
Unity
Play Mode
MooseRunner closes the validation loop
write tests · run tests · debug tests ◀ ─ ─ ─
The core loop · agent-first

Write, run, debug.

Three problems — flaky runs, slow loops, blind debugging — one tool. MooseRunner lets your coding agent and you write tests, run them reliably, and see exactly what broke, so bugs get caught before they ship.

PlayMode Test Runner — Unity Editor
The real MooseRunner Unity inspector panel
The panel

The human side.

Everything on the left ships today — a docked inspector a human drives by hand, and a CLI the agent drives. Two surfaces, same result.

Run · Stop · "Run the selected state."

One click runs the selected Play Mode tests — or your agent triggers them and reads the result back.

Interactive Time Control: 1.0

Drag the time scale live, set a per-method time scale, or single-step fixed updates one frame at a time.

Select Method / Class ▸ Root

Run a group of tests, control-click individual methods, and run the exact subset you need — again and again, without leaving Play Mode. (Supports Hot Reload.)

☑ Rerun Selected Test On HotReload

Save your code and the selected test re-fires instantly. The tightest possible edit-run loop.

Mean · Max · Duration · FixedUpdates

Real timing metrics, captured every run — numbers an AI agent can assert against deterministically.

CLIHot Reload awareUniTask · Task · coroutine
Install · UPM

One paste into manifest.json.

Open Packages/manifest.json in your Unity project and drop this block in. Unity pulls com.valectric.mooserunner from the public registry. First-run prompts for your license key. Then let your agent run mooserunnerCli setup and it will guide you through the setup (prerequisites, guideline docs, samples). On Unity 6.3+ you’ll see a one-time “Missing Signature” notice for scoped-registry packages — that’s expected; click Close.

Unity 6.xUPM scoped registryPublic · free to install

↳ No license key yet? Start the 30-day trial.

Packages/manifest.json
{
  "scopedRegistries": [
    { "name": "Valectric", "url": "https://registry.npmjs.org", "scopes": ["com.valectric"] },
    { "name": "OpenUPM",   "url": "https://package.openupm.com", "scopes": ["com.cysharp"] }
  ],
  "dependencies": {
    "com.valectric.mooserunner": "2.1.36"
  }
}
Write · Agent-first authoring

Tests your agent can actually write.

MooseRunner gives the agent a harness of well-structured helpers — multiplayer rigs, async support, scene setup and cleanup — so it authors real tests fast. You review and steer; the agent does the typing.

Multiplayer test harness

Spin up a master and clones, sync their clocks, and assert across instances — the hardest tests to write by hand, made first-class.

Async, your way

UniTask, standard Tasks and coroutines are all first-class, so generated tests match how your codebase already works.

Scene loading, tags & cleanup

Load any scene by name, tag persistent objects to survive a run, and tear everything down cleanly between tests.

agent ▸ mooserunnerCliCLI
$mooserunnerCli --help
Tests · Diagnostics · Recording · …
$mooserunnerCli test --class Game.Tests PlayerFlowTests
▶ Play Mode · stable · repeatable
✓ 11 passed · 1 failed (1.56s)
$mooserunnerCli test-log
assert Position(8,3) ✗ — got (8,1)
Run · Foundation

Stable, repeatable test execution.

Play Mode tests that just run — no Edit-Mode round-trip, in any order you want. Because nothing else matters if the basics don't work.

Stays in Play Mode

Run test after test without forcing a jump back to Edit Mode between each one.

Any order, grouped

Group tests, control-click to select methods, and run exactly what you need.

Async, your way

UniTask, standard Tasks, and coroutines — however you write async, it's handled.

Hot Reload aware

Understands the Hot Reload plugin and transitions correctly on reload events.

Auto-rerun on save

Save your code and the selected test re-executes instantly. Tightest loop possible.

Clean, repeatable

Results an AI agent can trust — the same run, the same way, every time.

Run · Multiplayer

Test multiplayer like it's single-player.

Parallel Unity instances, synchronized time, and assertions that target specific clones from the master — all reporting into master and one unified log for debugging.

master
⏱ 1.0× synced
◀ collects asserts
clone 1
⏱ 1.0× synced
assert → master
clone 2
⏱ 1.0× synced
assert → master
clone 3
⏱ 1.0× synced
assert → master
Unified Multiplayer Log
[master] run FlowTests
[clone 1] spawned · synced 1.0×
[clone 2] assert Position() → master
[clone 3] assert Health() → master
[master] FixedUpdate stepping…
✓ all clients converged (1.56s)
Debug · Time control

Inspect at any speed.

Slow time to a crawl to catch a blink-and-miss bug. Fast-forward past setup. Or single-step fixed updates one frame at a time.

Interactive Time Control
1.00×
time scale
↳ stays synced across every multiplayer instance.
Debug · AI visual analysis

Give AI eyes.

Some bugs are purely visual — wrong animation, wrong position, movement that just looks off. Record the run, tag objects, and let a second AI describe exactly what it sees.

Recording · 7.1s● REC
Empty platform before the character spawns0.0s
Character standing upright on the platform1.6s
Character pitching forward onto the red object2.4s
Character clipping into the red object, only upper half above the surface5.6s
Character has disappeared — only the platform and red object remain6.8s
Tagged object
Player
Start → End
(0,0) → (8,3)
Max velocity
12.4 u/s
Duration
7.10s
agent ▸ what happens 5.6–6.8s?
visual analysis

“The character collapses face-down onto the red object. By 5.6s only the upper torso is visible above its surface — the rest has clipped through. At 6.8s the character is gone entirely; no falling animation, no despawn effect. Likely a collision-volume mismatch.”

*Bring your own key.
More · Beyond the headlines

Depth beyond the headlines.

Test-scene loading
Load any scene by name — even outside build settings.
Human review toggle
AI can design tests with human review in mind. Add delays or stop time when the toggle is on.
Smart cleanup
Gentle or aggressive modes, with persistent-object tagging.
Hot Reload + auto-rerun
Save and the selected test re-fires instantly.
UniTask · Task · coroutine
Every async style is supported out of the box.
Persistent tags
Keep objects across tests without DontDestroyOnLoad.
30 days free
Test MooseRunner for free and start feeling the benefit of a solid validation loop.
Start free
Pricing · per seat

Simple, per-seat pricing.

Launch offer — 50% off. Use code at checkout:AITDD
Indie
Teams under 10 seats and under $200k revenue.
$20/mo · per seat
or $200/yr — 2 months free
Everything in MooseRunner
Write · run · debug, agent-first
Per seat
Annual = 2 months free
Start free
Studio
Teams of 10+ seats, or $200k+ revenue.
$89/mo · per seat
or $890/yr — 2 months free
Everything in Indie
Priority support
Per seat
Annual = 2 months free
Start free
Enterprise
Bespoke licensing, support, and invoicing.
Let's talk
volume seat pricing
Bespoke licensing
Priority support
Custom invoicing
Custom terms
Contact us

Card required to start the trial. No charge for 30 days; auto-renews on day 31 unless cancelled. Indie requires a checkbox attestation that annual revenue is below $200,000 USD.

FAQ

Questions, answered.

Still stuck? Email support@mooserunner.com — a human replies.

Two reasons: iteration speed and agents. Authoring and iterating on tests in Unity’s built-in Test Runner is slow and fiddly — the edit-run loop drags. And it isn’t agent-native: there’s no clean way for an AI coding agent to run tests and read results back, so driving it from an agent is a constant fight. MooseRunner adds a structured authoring harness and a CLI the agent drives directly — fast for you, native for the agent.

Try free for 30 days.

Write, run, and debug Unity tests with your AI agent. Indie from $20/mo, studio $89/seat — 30 days free.