Eas build error
Shared AI agent skills
npx -y skills add flurdy/agent-skills --skill eas-build-errorAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 6 stars6 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
View the latest EAS build status and errors. Fetches build details, extracts failure logs, and suggests fixes for common iOS/Android build issues.
SKILL.md
4.1 KB, as published. Nobody here has run it
EAS Build Error - View latest build status and errors
Show the status and errors from the latest EAS build.
Usage
/eas-build-error # Latest build (any platform)
/eas-build-error ios # Latest iOS build
/eas-build-error android # Latest Android build
/eas-build-error <build-id> # Specific build by ID
Implementation
Step 1: Get the build
Parse the argument to determine what to fetch:
- If argument looks like a UUID (contains hyphens, 36 chars): treat as build ID
npx eas build:view <build-id> --json - If argument is
iosorandroid: filter by platformnpx eas build:list --limit=1 --platform=<platform> --json --non-interactive - If no argument: get latest build across all platforms
npx eas build:list --limit=1 --json --non-interactive
Step 2: Display build summary
From the JSON output, extract and display:
## EAS Build: <STATUS>
| Field | Value |
|-------------|--------------------------------|
| ID | <id> |
| Platform | <platform> |
| Profile | <buildProfile> |
| Status | <status> (with emoji: ✓/✗/⏳) |
| Commit | <gitCommitHash> <gitCommitMessage> |
| Started | <createdAt> |
| Duration | <computed from metrics> |
| Logs | <link to expo.dev> |
Step 3: Show errors (if build failed)
If status is ERRORED or CANCELED:
-
Show the error field from the JSON:
### Error <error.message> -
Fetch detailed logs — try each URL in
logFilesarray:- Use
WebFetchon each log URL - Extract error lines, warnings, and failure details
- If URLs return 404 (expired), note that logs have expired
- Use
-
Try xcode build logs if available:
- Check
artifacts.xcodeBuildLogsUrl - Fetch and extract compilation errors
- Check
-
If all log URLs have expired, tell the user:
Log URLs have expired (15-minute TTL). View full logs at: <expo.dev link>
Step 4: Suggest fixes (if applicable)
If you recognize common error patterns, suggest fixes:
| Error Pattern | Suggestion |
|---|---|
non-modular header inside framework module | Add CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES to post_install |
module map file not found | Check use_modular_headers! vs use_frameworks! in Podfile |
Swift pods cannot yet be integrated as static libraries | Add useFrameworks: "static" to expo-build-properties |
Pod install errors | Check CocoaPods compatibility, try pod repo update |
No signing certificate | Check EAS credentials with eas credentials |
Provisioning profile | Run eas credentials to fix provisioning |
Example Output
## EAS Build: ERRORED ✗
| Field | Value |
|----------|----------------------------------------------------------|
| ID | 6a50d5ae-6a62-1345-96d3-c1def3755cf1 |
| Platform | iOS |
| Profile | development |
| Status | ✗ ERRORED |
| Commit | 8a2ba05 feat: Add haptic feedback... |
| Duration | 94s |
| Logs | https://expo.dev/accounts/USERNAME/projects/PROJECT/builds/… |
### Error
The "Run fastlane" step failed because of an error in the Xcode build process.
### Detected Errors
- module map file 'gRPC-Core.modulemap' not found (in target 'gRPC-C++')
### Suggested Fix
The `use_modular_headers!` setting is breaking gRPC module maps.
Consider using `useFrameworks: "static"` with a post_install hook instead.