Skip to content

[eas-cli] Add eas browse command#4003

Open
jonsamp wants to merge 4 commits into
mainfrom
jon/eng-24214-add-eas-browse-command
Open

[eas-cli] Add eas browse command#4003
jonsamp wants to merge 4 commits into
mainfrom
jon/eng-24214-add-eas-browse-command

Conversation

@jonsamp

@jonsamp jonsamp commented Jul 11, 2026

Copy link
Copy Markdown
Member

Why

eas open opens the project dashboard but has no way to jump straight to a specific project subpage (builds, submissions, updates, workflows, hosting, etc.). This adds a eas browse command that accepts an optional page argument so users can go directly where they want from the terminal. This is similar to the gh browse command.

I want this so it's easier to stay in the command line and to zoom to exactly where i need. I also want agents to be able to use this command to share where on our website they can find things in a more human-friendly format.

Linear: ENG-24214

How

  • Add eas browse [PAGE]. PAGE is a whitelisted argument mapped to its dashboard path via PROJECT_PAGES; both the EAS command name and the website wording resolve to the same page (e.g. build/builds, submit/submissions, workflow/workflows/cicd). With no argument it opens the project dashboard.
  • Add a --no-browser / -n flag to print the URL instead of opening a browser.
  • Extract URL building into getProjectPageUrl(accountName, projectName, page?) in build/utils/url.ts; getProjectDashboardUrl now delegates to it. Account and project names are encodeURIComponent-escaped, consistent with the other builders in that file.
  • Convert eas open into a thin alias that delegates to Browse.run([]). It's the same as calling eas browse.

Test Plan

  • Run eas browse [name of subpage] and also test --no-browser|-n. Examples: eas browse build, eas browse cicd.
  • Run eas browse with no arguments and make sure you see the project overview dashboard.
  • Run tests

Add `eas browse [PAGE]` to open the project page on expo.dev, with an
optional whitelisted page argument (e.g. `build`, `hosting`, `cicd`) for
project subpages and a `--no-browser` flag to print the URL instead.
`eas open` becomes a thin alias that opens the project dashboard.
@linear-code

linear-code Bot commented Jul 11, 2026

Copy link
Copy Markdown

ENG-24214

@codecov

codecov Bot commented Jul 11, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 93.87755% with 3 lines in your changes missing coverage. Please review.
✅ Project coverage is 59.73%. Comparing base (4b1f785) to head (88c3189).

Files with missing lines Patch % Lines
packages/eas-cli/src/commands/browse.ts 95.00% 2 Missing ⚠️
packages/eas-cli/src/commands/open.ts 75.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #4003      +/-   ##
==========================================
+ Coverage   59.67%   59.73%   +0.06%     
==========================================
  Files         941      942       +1     
  Lines       41319    41347      +28     
  Branches     8675     8680       +5     
==========================================
+ Hits        24654    24693      +39     
+ Misses      16571    16560      -11     
  Partials       94       94              

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions

Copy link
Copy Markdown

✅ Thank you for adding the changelog entry!

@jonsamp jonsamp marked this pull request as ready for review July 12, 2026 17:26
@jonsamp jonsamp requested a review from douglowder July 12, 2026 17:27
@github-actions

Copy link
Copy Markdown

Subscribed to pull request

File Patterns Mentions
**/* @douglowder
packages/eas-cli/src/build/** @sjchmiela

Generated by CodeMention

Warning: The preamble and epilogue options in commentConfiguration are deprecated. Use template instead.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant