Back to work
Project / 01Electron / Maestro / MCP

Baton

A traffic controller for parallel mobile test work.

Baton is an Electron app, API, CLI, and MCP integration built around Maestro workflows for React Native. It coordinates the local resources that parallel worktrees compete for, so test runs, screenshot capture, and UI comparisons do not fail simply because they land on the same machine at the same time.

  • Detects existing Metro instances, Maestro activity, simulators, and emulators.
  • Allocates ports and local test resources to worktrees, with a queue when capacity is busy.
  • Makes resource coordination available to people through the app and CLI, and to agents through MCP.

The core loop

A worktree requests a test environment. Baton observes what is already running, reserves an available port and device path, then releases that capacity when the task completes. If the required resource is occupied, the job waits in a queue instead of colliding with another run or giving up.

Built for evidence

The point is not just to make an E2E command pass. Baton supports the repeatable local harness needed for screenshots, visual comparisons, and several test runs at once—especially in a React Native project where agents are working in parallel.

Command surface