Problem
When running shopify theme dev in a non-interactive environment (for example together with parallel dev tasks using concurrently, npm-run-all, turbo, bun, etc.), Shopify CLI fails with:
Failed to perform the initial theme synchronization.
Failed to prompt:
Reconciliation Strategy
This usually happens when running a command non-interactively
This happens because the CLI asks interactively whether to keep local or remote changes during the initial synchronization.
Why this is problematic
Modern frontend/theme development workflows often run multiple parallel processes:
-
Vite/Webpack dev server
-
Shopify theme dev server
-
Tailwind watcher
-
TypeScript watcher
-
synchronization scripts
For example:
{
"scripts": {
"dev": "concurrently \"vite\" \"shopify theme dev\""
}
}
In such cases Shopify CLI becomes unusable because it requires an interactive prompt.
Requested solution
Please add a flag for reconciliation strategy, for example:
shopify theme dev --reconcile=local
or
shopify theme dev --keep-local
Possible values could be:
-
local -
remote -
ask(default current behavior)
Benefits
-
Enables proper CI/dev automation
-
Works with parallel task runners
-
Makes Shopify CLI friendlier for modern frontend workflows
-
Eliminates the need for hacks like ignoring
settings_data.json -
Improves DX significantly
Thank you!