Introduction

openDeviceCloud is split into three main parts:

  • frontend/ serves the browser dashboard used to manage devices and interact with them.

  • backend/ provides the HTTP API under /api, the browser-facing app shell, and the MCP endpoint at /mcp.

  • device-agent/ runs on trusted infrastructure and manages the actual iOS and Android runtimes.

Core Concepts

Agent

A device agent is a host machine connected to the backend. It reports capabilities, executes lifecycle tasks, and holds runtime data under its install directory.

Image

An image is the reusable source for new devices.

  • iOS images are imported from prepared VM directories or captured from existing stopped devices.

  • Android images are either discovered from the local Android SDK or captured from stopped devices as snapshots.

Device

A device is a managed runtime instance created from an image. Devices can be started, stopped, rebooted, deleted, and queried through the API or MCP tools.

Stable Routes

The repository keeps a few URL rules stable:

  • Backend HTTP routes live under /api.

  • Backend WebSocket endpoints stay under /api/ws/....

  • Device resources stay under /api/devices.

  • The MCP server is exposed separately at /mcp.