Shopify CLI 5.0.0
Shopify CLI 5.0 is your agent-ready Shopify development tool. It now features a standardized JSON output format for nearly all commands, and an app dev command optimized for agentic workflows.
⚠️ Breaking Changes
Review the migration guide for details on these changes and how to adapt existing scripts and workflows.
General
- Existing JSON output structures have changed on some commands. See the migration guide for details.
App
- The
app logsandapp logs sourcescommands have been removed. Use log output from theapp devcommand instead for Shopify Functions.
Theme
- The
--pollflag has been removed fromtheme dev.
New Features
App
app devrecords sessions, preview status, and JSONL logs to the filesystem, so agents can reuse a runningdevsession.app devnow supports streaming--jsonoutput for direct agent use.- Shared namespace metafield warnings added to agentic checks in
app security check(SHARED_NAMESPACE_METAFIELD_RENDER). - App security checks now account for theme app extension settings types when checking liquid rendering safety (#8935).
Theme
- When needed, theme commands prompt for identity in the browser for security verification. In CI, with
--no-inputor with--json, they stop and print a verification link.
General
- The
SHOPIFY_SERVICE_ACCOUNT_TOKENcan be used with Service Accounts to automate app releases and dev store management. TheSHOPIFY_APP_AUTOMATION_TOKENandSHOPIFY_CLI_PARTNERS_TOKENenvironment variables are now deprecated. - JSON output is now supported in over 90% of Shopify CLI commands.
- New Shopify loading indicator (#8136).
Patch Changes
App
app devwatches fewer files: it skips Cargotargetdirectories, Function build output,.shopifyfiles and editor temp files (#8993).app config linkno longer drops Shop scopes such asshop_app:oauth(#8977).- Fix migration detection for legacy Checkout and POS UI extensions in App Management apps (#8854).
- Bundle every UI extension
should_rendertarget instead of only the last one (#8862).
Theme
theme devshows the development theme instead of the live theme on stores where every market uses a subfolder (#8880).- Theme Access authentication works with all of a store's domains (#8822).
theme pullkeeps files inside the selected theme directory (#8834).- Show the missing-scope message for theme changes, as theme reads already do (#8897).
theme check --config <directory>reports a user error instead of crashing with EISDIR (#8988).- Fix
theme profilefailing with "Bad response: 301" when--urlhas a query string (#8989).
General
- Retry throttled API requests with exponential backoff, respecting
Retry-After(#8956). auth loginno longer crashes when the browser can't open; it prints the login link and waits (#8886).- Explain which access a token is missing for dev stores instead of printing a raw 401 (#8999).
- Fail clearly when
SHOPIFY_APP_AUTOMATION_TOKENorSHOPIFY_CLI_PARTNERS_TOKENis set but empty (#8731). - Report process startup failures and signal termination instead of exit code 0.
- Graceful shutdown and child-process cleanup on Windows (#8926).
- Security hardening: hide webhook secrets in debug output, partition the GraphQL cache by endpoint and token (#8888), and serialize GraphiQL inline scripts safely (#8887).