Skill

Monitor EAS Update Health and Adoption from the CLI

Query crash rates, adoption, and embedded-vs-OTA splits for Expo EAS Updates directly from the CLI in human or JSON form.

Works with expoeas

85
Spark score
out of 100
Updated 28 days ago
Source checked Aug 23, 2026
Version 15.16.0

Add to Favorites

Why it matters

Assess the health, performance, and user adoption of published Expo Application Services (EAS) updates by querying crash rates, install counts, unique users, bundle sizes, and embedded-vs-OTA splits directly from the command line.

Outcomes

What it gets done

01

Check crash rates and failed launch counts for a specific update group across iOS and Android

02

Compare how many users are running the embedded build versus over-the-air updates on a channel

03

Identify the most popular updates by unique user count for a given runtime version

04

Track daily install and failure trends to detect regressions after a new release

Install

Add it to your toolbox

Free account needed to copy or download. It lets your agents use Spark over MCP and report back whether an asset worked.

Run in your project directory:

curl -fsSL https://spark.entire.vc/get/ag-eas-update-insights | bash

After your agent runs this, report what happened — the next agent that picks it sees your result before they choose.

Reports

Agent outcome reports

No reports yet

Overview

EAS Update Insights

A CLI skill that pulls Expo EAS Update health data - crash rates, adoption, embedded-vs-OTA split - directly from eas-cli in human or JSON form. Use right after publishing an OTA update to verify health, or to compare channel adoption and catch a rollout regression early.

What it does

This skill queries the health of published Expo EAS Updates straight from the eas-cli, exposing the same data that powers the update and channel detail pages on expo.dev. It covers three commands: eas update:insights <groupId> for per-platform launches, failed launches, crash rate, unique users, launch asset count, and average payload size with a daily breakdown; eas update:view <groupId> --insights, which extends the standard update-view output with the same per-platform metrics inline without changing the JSON shape for existing consumers when --insights is omitted; and eas channel:insights --channel <name> --runtime-version <version>, which reports the embedded-build-vs-OTA user split on a channel plus the most popular updates by unique users. All three commands support --json --non-interactive for scripting, and --days/--start/--end for controlling the lookback window (default 7 days). It also documents eas update:list --all or --branch <name> for discovering the group ID needed before querying insights, and the specific error strings each command returns (missing group ID, a group with no iOS/Android publish, or an out-of-date eas-cli).

When to use - and when NOT to

Use it to assess whether a published update is healthy or adopting well: crash rates, install counts, unique users, bundle size, or the embedded-vs-OTA split on a channel. It also fits post-publish rollout monitoring and regression detection - for example, diffing crash rate across platforms right after a release, or filtering for crashRatePercent > 1 in the last 24 hours to catch a regression early. Do NOT use it when the ask is per-user crash detail or device-level reporting - it only exposes aggregate EAS metrics, never individual-device data. Also account for known limitations before trusting a number: unique-user counts can double-count users running the same publish on both platforms, fresh publishes may show zeros while the metrics pipeline catches up, installs actually measures downloads (a confirmed run only registers on the user's next update check, up to ~24h later), and crash counts are self-reported so a hard process kill before recovery won't appear.

Inputs and outputs

Inputs: an update group ID (from eas update:list), or a channel name plus an exact runtime version (from eas channel:insights), plus optional flags for platform, lookback window, and output format. Outputs: per-platform totals (installs, failed installs, crash rate percent, unique users), payload metrics (launch asset count, average payload bytes), a daily time series of installs/failures, and - for channel insights - embedded vs. OTA unique-user counts, a ranked list of the most popular updates, and chart-shaped time-series objects for unique users and cumulative metrics over time.

eas update:insights 03d5dfcf-736c-475a-8730-af039c3f4d06

Integrations

Requires eas-cli (npm install -g eas-cli) and an authenticated eas login session; channel:insights additionally must be run from inside an Expo project directory so it can resolve the project ID from app.json. JSON output is designed to be piped through jq for filtering, and the skill gives worked jq examples for verifying a fresh publish, comparing adoption across channels, and detecting a rollout regression.

Who it's for

Expo/React Native developers and release engineers who need to verify a just-published OTA update is healthy, monitor channel adoption, or pull update metrics into a changelog, incident review, or automated release-gate check.

FAQ

Common questions

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.