eas-update-insights
Check the health of published EAS Updates: crash rates, install/launch counts, unique users, payload size, and the split between embedded and OTA users per…
Skill by tassiovale
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/tassiovale-eas-update-insights
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: devops
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions: not checked yet.
What's inside
- Skill name
eas-update-insights- Description
- Check the health of published EAS Updates: crash rates, install/launch counts, unique users, payload size, and the split between embedded and OTA users per channel. Use when the user asks how an update is performing, whether a rollout is healthy, how many users are on the embedded build vs OTA, or wants to gate CI on update health.
- License
- MIT
- Allowed tools
- Bash(eas, *)
- Instructions
- 222 lines in SKILL.md · view on GitHub
Before installing
- Pre-approves some shell commands
Files (3)
- SKILL.md
- channel-insights-schema.md · references/
- update-insights-schema.md · references/
SKILL.md (first lines)
# EAS Update Insights
Query the health of published EAS Updates directly from the CLI: launches, failed launches, crash rates, unique users, payload size, the embedded-vs-OTA user split per channel, and the most popular updates per runtime version. The data is the same data that powers the update and channel detail pages on expo.dev; these commands expose it in the terminal in human and JSON form.
## When to use this skill
Use this when the user wants to assess the health or adoption of a published EAS Update: crash rates, install counts, unique users, bundle size, or the split between embedded and OTA users on a channel.
Example prompts:
- "How is the latest update doing?"
- "Is the latest update healthy?"
- "Is the new release crashing more than the last one?"
- "How many users are on the latest update vs the embedded build?"
- "Which update is most popular on production right now?"
- "How big is our update bundle?"
Also fits: post-publish rollout monitoring and regression detection.
Don't use when the user needs per-user crash detail or device-level reporting; this skill only exposes aggregate EAS metrics.
## Prerequisites
- `eas-cli` installed (`npm install -g eas-cli`).
- Logged in: `eas login`.
- For `channel:insights`: run from an Expo project directory (the command resolves the project ID from `app.json`). `update:insights` only needs a login.
## Commands at a glance
| Command | Purpose |
|---|---|
| `eas update:list` | Discover recent update groups, their `group` IDs, and branch names |
| `eas update:insights <groupId>` | Per-platform launches, failed launches, crash rate, unique users, payload size, daily breakdown |
| `eas update:view <groupId> --insights` | Update group details + the same metrics appended |
| `eas channel:insights --channel <name> --runtime-version <version>` | Embedded/OTA user counts, most popular updates, cumulative metrics for a channel + runtime |
All of these support `--json --non-interactive` for programmatic parsing.
## Discovering IDs
Before querying insights for an update group, you need its `group` ID. Use `eas update:list` with either `--branch <name>` (updates on that branch) or `--all` (updates across all branches). Always pass `--json --non-interactive` when running non-interactively; without a branch/`--all` flag the command will otherwise prompt for a branch selection:
```bash
# Latest group id across all branches
eas update:list --all --json --non-interactive | jq -r '.currentPage[0].group'
# Latest group id on a specific branch
eas update:list --branch production --json --non-interactive | jq -r '.currentPage[0].group'
```
The JSON response has a `currentPage` array with one entry per update group (both platforms of the same publish are collapsed into one entry):
```json
{
"currentPage": [
{
"branch": "production",
"message": "\"Fix checkout crash\" (1 week ago by someone)",
"runtimeVersion": "1.0.6",
"group": "03d5dfcf-736c-475a-8730-af039c3f4d06",
"platforms": "android, ios",
"isRollBackToEmbedded": false
}
]
}
```
Entries also carry `codeSigningKey` and `rolloutPercentage`, but only when those features are in use for the group (undefined values are omitted from the JSON output).
When called with `--branch <name>`, the response also includes `name` (the branch name) and `id` (the branch ID) at the top level.
## `eas update:insights <groupId>`
Shows launches, failed launches, crash rate, unique users, launch asset count, and average payload size for a single update group, broken down **per platform** (iOS, Android), plus a daily breakdown of launches and failures.
### Basic use
```bash
eas update:insights 03d5dfcf-736c-475a-8730-af039c3f4d06
```
### Flags
| Flag | Description |
|---|---|
| `--days <N>` | Look back N days. Default: **7**. Mutually exclusive with `--start`/`--end`. |
| `--start <iso-date>` / `--end <iso-date>` | Explicit time range, e.g. `--start 2026-04-01 --end 2026-04-15`. |
| `--platform <ios\|android>` | Filter to a single platform. Omit to see all platforms in the group. |
| `--json` | Machine-readable output. Implies `--non-interactive`. |
| `--non-interactive` | Required when scripting. |
### JSON output shape
Top level: `groupId`, `timespan` (`start`, `end`, `daysBack`), and `platforms[]` with one entry per platform the group was published to. Each platform entry has `updateId`, `totals` (`uniqueUsers`, `installs`, `failedInstalls`, `crashRatePercent`), `payload` (`launchAssetCount`, `averageUpdatePayloadBytes`), and a `daily[]` time series of `{ date, installs, failedInstalls }`.
For the complete schema and field reference, see [references/update-insights-schema.md](./references/update-insights-schema.md).
Fields that matter for health assessment:
- `platforms[].totals.crashRatePercent`, computed as `failedInstalls / (installs + failedInstalls) * 100`. Zero when there are no installs.
- `platforms[].totals.installs` and `uniqueUsers` give the adoption signal.
- `platforms[].daily` is a time series, useful for spotting a sudden spike in failures.
### Errors
- `Could not find any updates with group ID: "<id>"` — group doesn't exist or you lack access.
- `Update group "<id>" has no ios update (available platforms: android)` — `--platform ios` was used but the group wasn't published for iOS.
- `EAS Update insights is not supported by this version of eas-cli. Please upgrade ...` — the server deprecated a field the CLI relies on. Run `npm install -g eas-cli@latest`.
## `eas update:view <groupId> --insights`
Extends the standard `update:view` output with the same per-platform insights, inline.
```bash
# Human-readable
eas update:view 03d5dfcf-... --insights
eas update:view 03d5dfcf-... --insights --days 30
# JSON: wrapped as { updates: [...], insights: {...} }From tassiovale/claude-code-kit, MIT.
More from tassiovale/claude-code-kit
- 0.549score
esm
tassiovale
Use when working directly with the `esm` Python SDK, ESM3 or ESMC model IDs, Forge/Biohub inference clients, or ESMFold2 folding workflows.
SkillCFreshness: C★ 12Claude Code +9 - 0.549score
exa-search
tassiovale
Web toolkit powered by Exa, tuned for scientific and technical content.
SkillCFreshness: C★ 12Claude Code +9 - 0.545score
bulk-rnaseq
tassiovale
End-to-end bulk RNA-seq orchestrator — takes raw FASTQ reads through QC and trimming (FastQC, fastp/Trim Galore), alignment and quantification (STAR, Salmon…
SkillCFreshness: C★ 12Claude Code +9 - 0.542score
diffdock
tassiovale
DiffDock and DiffDock-L molecular docking.
SkillCFreshness: C★ 12Claude Code +9 - 0.540score
cellxgene-census
tassiovale
Query the CZ CELLxGENE Census programmatically for versioned public single-cell and spatial transcriptomics data.
SkillCFreshness: C★ 12Claude Code +9 - 0.535score
bids
tassiovale
Use this skill when working with Brain Imaging Data Structure (BIDS) datasets: organizing neuroscience and biomedical data (MRI, EEG, MEG, iEEG, PET…
SkillCFreshness: C★ 12Claude Code +9 - 0.514score
algorithmic-art
tassiovale
Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration.
SkillCFreshness: C★ 12Claude Code +9 - 0.514score
brand-guidelines
tassiovale
Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel.
SkillCFreshness: C★ 12Claude Code +9 - 0.514score
canvas-design
tassiovale
Create beautiful visual art in .png and .pdf documents using design philosophy.
SkillCFreshness: C★ 12Claude Code +9 - 0.514score
doc-coauthoring
tassiovale
Guide users through a structured workflow for co-authoring documentation.
SkillCFreshness: C★ 12Claude Code +9 - 0.513score
executing-plans
tassiovale
Use when you have a written implementation plan to execute in a separate session with review checkpoints
SkillCFreshness: C★ 12Claude Code +9
Signals
- Stars
- 12
- Forks
- 4
- Open issues
- 0
- Last commit (this folder)
- Jun 10, 2026 (4 months ago)
- Last release
- Jul 26, 2026 (3 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/tassiovale/claude-code-kit
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Same skill elsewhere
Copies of this SKILL.md published by others; search shows only one of them.
- 0.525score
eas-update-insights
sediman-agent
Check the health of published EAS Updates: crash rates, install/launch counts, unique users, payload size, and the split between embedded and OTA users per…
SkillCFreshness: C★ 394Claude Code +9 - 0.342score
eas-update-insights
abogoyavlensky
Check the health of published EAS Updates: crash rates, install/launch counts, unique users, payload size, and the split between embedded and OTA users per…
SkillAFreshness: AClaude Code +9 - 0.288score
eas-update-insights
projectaki
Check the health of published EAS Updates: crash rates, install/launch counts, unique users, payload size, and the split between embedded and OTA users per…
SkillCFreshness: CClaude Code +9
More from tassiovale
- 0.549score
esm
tassiovale
Use when working directly with the `esm` Python SDK, ESM3 or ESMC model IDs, Forge/Biohub inference clients, or ESMFold2 folding workflows.
SkillCFreshness: C★ 12Claude Code +9 - 0.549score
exa-search
tassiovale
Web toolkit powered by Exa, tuned for scientific and technical content.
SkillCFreshness: C★ 12Claude Code +9 - 0.545score
bulk-rnaseq
tassiovale
End-to-end bulk RNA-seq orchestrator — takes raw FASTQ reads through QC and trimming (FastQC, fastp/Trim Galore), alignment and quantification (STAR, Salmon…
SkillCFreshness: C★ 12Claude Code +9 - 0.542score
diffdock
tassiovale
DiffDock and DiffDock-L molecular docking.
SkillCFreshness: C★ 12Claude Code +9 - 0.540score
cellxgene-census
tassiovale
Query the CZ CELLxGENE Census programmatically for versioned public single-cell and spatial transcriptomics data.
SkillCFreshness: C★ 12Claude Code +9 - 0.535score
bids
tassiovale
Use this skill when working with Brain Imaging Data Structure (BIDS) datasets: organizing neuroscience and biomedical data (MRI, EEG, MEG, iEEG, PET…
SkillCFreshness: C★ 12Claude Code +9
Cite this page
eas-update-insights skill. Agent Mart. https://agentmart.dev/skills/tassiovale-eas-update-insights (last updated 2026-10-24)