# Operate an EasyNet Device Runtime | EasyNet Docs Source: https://easynet.run/docs/connect/runtime Docs / Operate a device Runtime [Docs](https://easynet.run/docs) Docs # Operate a device Runtime Use the CLI to pair a device, run its Runtime, and inspect the capabilities available there. Install the prebuilt EasyNet CLI and Runtime bundle, pair this host, boot the operator-managed daemon, and inspect the state every connector depends on. [All connection paths](https://easynet.run/docs/connect) ## Run this guide Outcome Install the prebuilt EasyNet CLI and Runtime bundle, pair this host, boot the operator-managed daemon, and inspect the state every connector depends on. Before you run it The public installer supports macOS and Linux on arm64/aarch64 or x86_64/amd64. A Windows x86_64 package exists, but this guide intentionally withholds the hosted PowerShell installer until its owned-cleanup revision is deployed and verified on a Windows host. Then create a pairing token in the EasyNet console and treat it as a credential: never paste it into logs, screenshots, or source control. [Open the device console to create a pairing token](https://easynet.run/control_plane/devices) Choose operating system ### Give your coding agent the whole setup task Includes the selected mode, prerequisites and checks. Copying does not run anything. Context tasks cover folder mapping only; Windows installation remains on hold. Preview task macOS / Linux · download, inspect, install ``` ( set -eu installer="$(mktemp -t easynet-install.XXXXXX)" trap 'rm -f "$installer"' EXIT curl -sSfL https://easynet.run/install -o "$installer" less "$installer" sudo sh "$installer" easynet --help ) ``` Bash / zsh · pair and inspect the local snapshot ``` ( set +x set -eu terminal_state="$(stty -g)" trap 'stty "$terminal_state"' 0 trap 'exit 130' 2 trap 'exit 143' 15 trap 'exit 129' 1 stty -echo printf 'Pairing token: ' >&2 IFS= read -r EASYNET_PAIRING_TOKEN printf '\n' >&2 stty "$terminal_state" [ -n "$EASYNET_PAIRING_TOKEN" ] || { printf 'Pairing token is empty.\n' >&2; exit 1; } easynet device join "$EASYNET_PAIRING_TOKEN" \ --hub https://easynet.run \ --boot yes easynet runtime status --json ) ``` terminal · request the live Realm directory ``` # This is a live Hub directory request, not a local status alias. easynet device list --state all --format json ``` ## Verify the result and boundary Success looks like `runtime status --json` reports local Runtime lifecycle and a projection of the saved join/session snapshot. Only a successful `device list --state all --format json` request proves that the Hub can serve the current Realm directory request. Still separate The `product_presence` fields in local Runtime status are persisted snapshot projections, not a heartbeat or live dispatch probe. An offline-owner or no-live-session error from `device list` means current Realm readiness is not established. Even a successful listing does not prove that a particular caller will pass Invocation admission.