---
name: EAS CLI
slug: eas-cli
type: github
source_url: https://github.com/expo/eas-cli
changelog_url: https://github.com/expo/eas-cli/blob/HEAD/CHANGELOG.md
organization: Expo
organization_slug: expo
total_releases: 102
latest_version: v18.7.0
latest_date: 2026-04-14
last_updated: 2026-04-19
tracking_since: 2024-12-06
canonical: https://releases.sh/expo/eas-cli
organization_url: https://releases.sh/expo
---

<Release version="v18.7.0" date="April 14, 2026" published="2026-04-14T18:51:00.000Z" url="https://github.com/expo/eas-cli/releases/tag/v18.7.0">
v18.7.0

### 🎉 New features

- [build-tools] Add `eas/read_package_json` and `eas/read_app_config` functions ([#3585](https://github.com/expo/eas-cli/pull/3585) by [@gwdp](https://github.com/gwdp))
- [eas-cli] Add `--skip-bundler` to `eas build:dev` to install and run a development build without starting the local Expo/Metro server. ([#3604](https://github.com/expo/eas-cli/pull/3604) by [@mmichels-brex](https://github.com/mmichels-brex))

</Release>

<Release version="v18.6.0" date="April 10, 2026" published="2026-04-10T20:55:10.000Z" url="https://github.com/expo/eas-cli/releases/tag/v18.6.0">
v18.6.0

### 🎉 New features

- [eas-cli] Add missing Apple metadata attributes for age ratings and content descriptions. ([#3584](https://github.com/expo/eas-cli/pull/3584) by [@EvanBacon](https://github.com/EvanBacon))
- [eas-cli] Add App Clip metadata support to `metadata:push` and `metadata:pull` (default experience action, per-locale subtitle and header image, App Store review invocation URLs). ([#3590](https://github.com/expo/eas-cli/pull/3590) by [@EvanBacon](https://github.com/EvanBacon))
- [build-tools] Add `working_directory` input to `eas/build` function group for custom builds. ([#3582](https://github.com/expo/eas-cli/pull/3582) by [@szdziedzic](https://github.com/szdziedzic))
- [eas-cli] Add `observe:metrics`, `observe:events`, and `observe:versions` commands. ([#3401](https://github.com/expo/eas-cli/pull/3401) by [@ubax](https://github.com/ubax), [@douglowder](https://github.com/douglowder))

### 🐛 Bug fixes

- [steps] Coerce numeric env values to strings in workflow step configuration. ([#3583](https://github.com/expo/eas-cli/pull/3583) by [@szdziedzic](https://github.com/szdziedzic))
- [build-tools][eas-cli] Detect iOS Development provisioning profiles and set correct code signing identity instead of treating them as Ad Hoc. ([#3496](https://github.com/expo/eas-cli/pull/3496) by [@qwertey6](https://github.com/qwertey6))
- [build-tools] Prevent detecting Yarn Modern as Classic based on lockfile ([#3572](https://github.com/expo/eas-cli/pull/3572) by [@kitten](https://github.com/kitten))
- [eas-cli] Bump `@expo/apple-utils` to `2.1.18` to fix `metadata:push` failing on `ageRatingDeclarations` due to the removed `gamblingAndContests` attribute. ([#3588](https://github.com/expo/eas-cli/pull/3588) by [@EvanBacon](https://github.com/EvanBacon))
- [eas-cli] Bump `@expo/apple-utils` to `2.1.19` to fix image and video uploads via `metadata:push` getting stuck in `AWAITING_UPLOAD` state. The asset client was inheriting Bearer token injection from the App Store Connect API client, which caused S3 presigned URL uploads to be silently mishandled by Apple's CDN. Fixes screenshots, previews, and App Clip header image uploads. ([#3590](https://github.com/expo/eas-cli/pull/3590) by [@EvanBacon](https://github.com/EvanBacon))
- [eas-cli] `metadata:pull` now preserves screenshot, video preview, and App Clip header image entries with placeholder paths when the asset is in an unrendered state, so users can recover broken records by replacing the file or removing the entry instead of having entries silently dropped from `store.config.json`. ([#3590](https://github.com/expo/eas-cli/pull/3590) by [@EvanBacon](https://github.com/EvanBacon))
- [eas-cli] Surface hosting deployment's asset upload errors sooner ([#3600](https://github.com/expo/eas-cli/pull/3600) by [@kitten](https://github.com/kitten))

</Release>

<Release version="v18.5.0" date="April 2, 2026" published="2026-04-02T10:44:17.000Z" url="https://github.com/expo/eas-cli/releases/tag/v18.5.0">
v18.5.0

### 🎉 New features

- [eas-cli] Add screenshots and previews support to `metadata:push` and `metadata:pull`. ([#3301](https://github.com/expo/eas-cli/pull/3301) by [@EvanBacon](https://github.com/EvanBacon))
- [eas-cli] Add `--non-interactive` flag to `metadata:push` and `metadata:pull` commands with ASC API Key auth support. ([#3548](https://github.com/expo/eas-cli/pull/3548) by [@EvanBacon](https://github.com/EvanBacon))

### 🐛 Bug fixes

- [eas-cli] Fix workflow:logs for builds using built-in EAS build steps. ([#3523](https://github.com/expo/eas-cli/pull/3523) by [@douglowder](https://github.com/douglowder))
- [build-tools][worker] Read Expo app config with `expo config` CLI invocation before falling back to `@expo/config` ([#3536](https://github.com/expo/eas-cli/pull/3536) by [@kitten](https://github.com/kitten))
- Fix `hasIgnoredIosProjectAsync()` always returning `false` for ignored iOS projects. ([#3562](https://github.com/expo/eas-cli/pull/3562) by [@sjchmiela](https://github.com/sjchmiela))

### 🧹 Chores

- Bump apple-utils. ([#3545](https://github.com/expo/eas-cli/pull/3545) by [@quinlanj](https://github.com/quinlanj))
- [eas-cli][build-tools][worker] Bump `@expo/config` and `@expo/config-plugins`. ([#3527](https://github.com/expo/eas-cli/pull/3527) by [@quinlanj](https://github.com/quinlanj))

</Release>

<Release version="v18.4.0" date="March 16, 2026" published="2026-03-16T20:24:35.000Z" url="https://github.com/expo/eas-cli/releases/tag/v18.4.0">
v18.4.0

### 🎉 New features

- Auto-detect non-interactive mode in CI and non-TTY environments. ([#3486](https://github.com/expo/eas-cli/pull/3486) by [@EvanBacon](https://github.com/EvanBacon))
- Add `skip-build-if-not-found` flag to `eas build:dev`. ([#3495](https://github.com/expo/eas-cli/pull/3495) by [@mmichels-brex](https://github.com/mmichels-brex))

</Release>

<Release version="v18.3.0" date="March 10, 2026" published="2026-03-10T02:04:32.000Z" url="https://github.com/expo/eas-cli/releases/tag/v18.3.0">
v18.3.0

### 🎉 New features

- Show user email in `eas account:view` output. ([#3485](https://github.com/expo/eas-cli/pull/3485) by [@brentvatne](https://github.com/brentvatne))

</Release>

<Release version="v18.2.0" date="March 9, 2026" published="2026-03-09T22:20:31.000Z" url="https://github.com/expo/eas-cli/releases/tag/v18.2.0">
v18.2.0

### 🎉 New features

- Auto-enable `--non-interactive` when `--json` is passed, so users no longer need to specify both flags. ([#3476](https://github.com/expo/eas-cli/pull/3476) by [@krystofwoldrich](https://github.com/krystofwoldrich))
- Auto-generate Android keystore in non-interactive mode instead of throwing an error. ([#3477](https://github.com/expo/eas-cli/pull/3477) by [@EvanBacon](https://github.com/EvanBacon))
- Add `--source-maps` flag to prevent uploading server sourcemaps ([#3478](https://github.com/expo/eas-cli/pull/3478) by [@hassankhan](https://github.com/hassankhan))

### 🐛 Bug fixes

- Provide an override for the new --environment flag requirement in the update command. ([#3442](https://github.com/expo/eas-cli/pull/3442) by [@douglowder](https://github.com/douglowder))
- Add missing `--include=dev` for `npm install` commands ([#3459](https://github.com/expo/eas-cli/pull/3459) by [@kitten](https://github.com/kitten))
- Add missing `--production false` for `yarn install` commands for Yarn Classic ([#3459](https://github.com/expo/eas-cli/pull/3459) by [@kitten](https://github.com/kitten))

### 🧹 Chores

- Upgrade `oclif` to v4. ([#3472](https://github.com/expo/eas-cli/pull/3472) by [@sjchmiela](https://github.com/sjchmiela))

</Release>

<Release version="v18.1.0" date="March 4, 2026" published="2026-03-04T08:35:55.000Z" url="https://github.com/expo/eas-cli/releases/tag/v18.1.0">
v18.1.0

### 🎉 New features

- Support YAML anchors and aliases when parsing workflow files. ([#3435](https://github.com/expo/eas-cli/pull/3435) by [@sjchmiela](https://github.com/sjchmiela))

### 🐛 Bug fixes

- Remove --environment flag requirement for update:configure. ([#3440](https://github.com/expo/eas-cli/pull/3440) by [@douglowder](https://github.com/douglowder))
- Fix login spinner interfering with prompts in `eas go` command when not logged in. ([#3451](https://github.com/expo/eas-cli/pull/3451) by [@byronkarlen](https://github.com/byronkarlen))

</Release>

<Release version="v18.0.6" date="February 27, 2026" published="2026-02-27T22:36:52.000Z" url="https://github.com/expo/eas-cli/releases/tag/v18.0.6">
v18.0.6



</Release>

<Release version="v18.0.5" date="February 25, 2026" published="2026-02-25T00:42:43.000Z" url="https://github.com/expo/eas-cli/releases/tag/v18.0.5">
v18.0.5

### 🛠 Breaking changes

- Require --environment flag for update commands when SDK >= 55. ([#3398](https://github.com/expo/eas-cli/pull/3398) by [@douglowder](https://github.com/douglowder))

</Release>

<Release version="v18.0.4" date="February 23, 2026" published="2026-02-23T20:47:45.000Z" url="https://github.com/expo/eas-cli/releases/tag/v18.0.4">
v18.0.4

### 🐛 Bug fixes

- Revert authorization code flow with PKCE for browser-based login. ([#3422](https://github.com/expo/eas-cli/pull/3422) by [@byronkarlen](https://github.com/byronkarlen))

</Release>

<Release version="v18.0.3" date="February 20, 2026" published="2026-02-20T08:02:13.000Z" url="https://github.com/expo/eas-cli/releases/tag/v18.0.3">
v18.0.3

### 🎉 New features

- Use authorization code flow with PKCE for browser-based login. ([#3398](https://github.com/expo/eas-cli/pull/3398) by [@byronkarlen](https://github.com/byronkarlen))

</Release>

<Release version="v18.0.1" date="February 12, 2026" published="2026-02-12T11:18:25.000Z" url="https://github.com/expo/eas-cli/releases/tag/v18.0.1">
v18.0.1

### 🛠 Breaking changes

- Drop support for Node 18 and Node 19. Require Node 20+. ([#3343](https://github.com/expo/eas-cli/pull/3343) by [@sjchmiela](https://github.com/sjchmiela))

### 🎉 New features

- Add `--browser` flag to `eas login` for browser-based authentication. ([#3312](https://github.com/expo/eas-cli/pull/3312) by [@byronkarlen](https://github.com/byronkarlen))

### 🐛 Bug fixes

- Hide progress bar in build credits warning when usage reaches 100%. ([#3371](https://github.com/expo/eas-cli/pull/3371) by [@mackenco](https://github.com/mackenco))

### 🧹 Chores

- Upgrade `tar` to v7. ([#3327](https://github.com/expo/eas-cli/pull/3327) by [@KarolRzeminski](https://github.com/KarolRzeminski))

</Release>

<Release version="v16.32.0" date="January 30, 2026" published="2026-01-30T10:20:40.000Z" url="https://github.com/expo/eas-cli/releases/tag/v16.32.0">
v16.32.0

### 🎉 New features

- Hidden beta version of new `eas account:usage` command for viewing account usage and billing estimates. ([#3334](https://github.com/expo/eas-cli/pull/3334) by [@douglowder](https://github.com/douglowder), [@EvanBacon](https://github.com/EvanBacon))
- Add `--no-bytecode` and `--source-maps [mode]` flags to `eas update`. ([#3339](https://github.com/expo/eas-cli/pull/3339) by [@brentvatne](https://github.com/brentvatne))
- Add App Clip bundle identifier registration support for multi-target iOS builds. ([#3300](https://github.com/expo/eas-cli/pull/3300) by [@evanbacon](https://github.com/evanbacon))
- Add `--runtime-version` and `--platform` filters to `eas update:list`. ([#3261](https://github.com/expo/eas-cli/pull/3261) by [@HarelSultan](https://github.com/HarelSultan))

### 🐛 Bug fixes

- Fix `--source-maps` flag compatibility with older SDKs that only support it as a boolean flag. ([#3341](https://github.com/expo/eas-cli/pull/3341) by [@brentvatne](https://github.com/brentvatne))
- Use `--dump-sourcemaps` as fallback when `--source-maps` is not provided to `eas update`, for backwards compatibility. ([8cc324e1](https://github.com/expo/eas-cli/commit/8cc324e1) by [@brentvatne](https://github.com/brentvatne))
- Fix `metadata:pull` failing for apps with only a live version by falling back to live app version and info. ([#3299](https://github.com/expo/eas-cli/pull/3299) by [@EvanBacon](https://github.com/EvanBacon))
- eas init should fix and validate project name and slug. ([#3277](https://github.com/expo/eas-cli/pull/3277) by [@douglowder](https://github.com/douglowder))

### 🧹 Chores

- Test with node 24. ([#3270](https://github.com/expo/eas-cli/pull/3270) by [@wschurman](https://github.com/wschurman))
- Delete channel in background. ([#3278](https://github.com/expo/eas-cli/pull/3278) by [@quinlanj](https://github.com/quinlanj))
- Add warning to channel:delete. ([#3335](https://github.com/expo/eas-cli/pull/3335) by [@quinlanj](https://github.com/quinlanj))

</Release>

<Release version="v16.28.0" date="November 20, 2025" published="2025-11-20T19:57:57.000Z" url="https://github.com/expo/eas-cli/releases/tag/v16.28.0">
v16.28.0

### 🎉 New features

- `eas:new` sorts organization accounts first in account selection. ([#3256](https://github.com/expo/eas-cli/pull/3256) by [@mackenco](https://github.com/mackenco))

### 🐛 Bug fixes

- Fix `eas:build` bug where overages are checked before config is ready. ([#3260](https://github.com/expo/eas-cli/pull/3260) by [@mackenco](https://github.com/mackenco))

### 🧹 Chores

- Delete branch in background. ([#3258](https://github.com/expo/eas-cli/pull/3258) by [@quinlanj](https://github.com/quinlanj))

</Release>

<Release version="v16.27.0" date="November 13, 2025" published="2025-11-13T02:20:55.000Z" url="https://github.com/expo/eas-cli/releases/tag/v16.27.0">
v16.27.0

### 🎉 New features

- Kick off update patch generation if enabled - this is feature is in preview, don't use it for prod yet please. ([#3250](https://github.com/expo/eas-cli/pull/3250) by [@quinlanj](https://github.com/quinlanj))

### 🐛 Bug fixes

- Fix workflow:status when run ID passed in. ([#3253](https://github.com/expo/eas-cli/pull/3253) by [@douglowder](https://github.com/douglowder))
- Fix updating file env vars with `env:update --non-interactive`. ([#3249](https://github.com/expo/eas-cli/pull/3249) by [@kadikraman](https://github.com/kadikraman))

### 🧹 Chores

- Fix yarn watch. ([#3251](https://github.com/expo/eas-cli/pull/3251) by [@quinlanj](https://github.com/quinlanj))
- Remove the **node_modules** installation requirement for `workflow:run` command. ([#3254](https://github.com/expo/eas-cli/pull/3254) by [@kudo](https://github.com/kudo))

</Release>

<Release version="v16.26.0" date="October 29, 2025" published="2025-10-29T19:26:40.000Z" url="https://github.com/expo/eas-cli/releases/tag/v16.26.0">
v16.26.0

### 🎉 New features

- New command `workflow:status`. ([#3242](https://github.com/expo/eas-cli/pull/3242) by [@douglowder](https://github.com/douglowder))

### 🧹 Chores

- `eas:new` cleanup (remove `hidden` tag, fix README error, output cleanup). ([#3243](https://github.com/expo/eas-cli/pull/3243) by [@mackenco](https://github.com/mackenco))

</Release>

<Release version="v16.25.1" date="October 28, 2025" published="2025-10-28T15:05:40.000Z" url="https://github.com/expo/eas-cli/releases/tag/v16.25.1">
v16.25.1

### 🧹 Chores

- Remove preview label from EAS Hosting commands ([#3241](https://github.com/expo/eas-cli/pull/3241) by [@kitten](https://github.com/kitten))

</Release>

<Release version="v16.25.0" date="October 27, 2025" published="2025-10-27T16:54:59.000Z" url="https://github.com/expo/eas-cli/releases/tag/v16.25.0">
v16.25.0

### 🎉 New features

- `eas:new` command changes (project name prompt, output cleanup, additional project files, additional prompts). ([#3235](https://github.com/expo/eas-cli/pull/3235) by [@mackenco](https://github.com/mackenco))
- `eas:build` command displays a warning when account is near its build limit. ([#3236](https://github.com/expo/eas-cli/pull/3236) by [@mackenco](https://github.com/mackenco))

### 🐛 Bug fixes

- workflow:run can use --wait and --json together. ([#3239](https://github.com/expo/eas-cli/pull/3239) by [@douglowder](https://github.com/douglowder))
- Add missing env for local builds with latest plugin. ([#3237](https://github.com/expo/eas-cli/pull/3237) by [@douglowder](https://github.com/douglowder))

### 🧹 Chores

- Document the default values for `track` and `releaseStatus`. ([#3229](https://github.com/expo/eas-cli/pull/3229) by [@kadikraman](https://github.com/kadikraman))

</Release>

<Release version="v16.24.1" date="October 19, 2025" published="2025-10-19T21:51:46.000Z" url="https://github.com/expo/eas-cli/releases/tag/v16.24.1">
v16.24.1

### 🐛 Bug fixes

- Revert change in ora version. ([#3231](https://github.com/expo/eas-cli/pull/3231) by [@douglowder](https://github.com/douglowder))

</Release>

<Release version="v16.24.0" date="October 19, 2025" published="2025-10-19T20:05:17.000Z" url="https://github.com/expo/eas-cli/releases/tag/v16.24.0">
v16.24.0

### 🎉 New features

- workflow:run --wait shows periodic job and step status updates. ([#3227](https://github.com/expo/eas-cli/pull/3227) by [@douglowder](https://github.com/douglowder))

### 🐛 Bug fixes

- workflow:logs should show logs from build and repack jobs. ([#3226](https://github.com/expo/eas-cli/pull/3226) by [@douglowder](https://github.com/douglowder))

</Release>

<Pagination page="1" total-pages="6" total-items="102" next="https://releases.sh/expo/eas-cli.md?page=2" />
