Skip to content
Mehrdad Pajuhaan edited this page Oct 23, 2026 · 1 revision

FAQ

Answers to the questions developers ask most often about Selldone CLI, including fixes for common errors.

Do I need a paid account to deploy?

Yes. Deploying Layouts requires a premium account. The CLI stops with Only premium users can deploy layouts for other accounts. Subscribe at selldone.com/shuttle/wallet/subscriptions. If you cannot subscribe, the CLI suggests emailing Selldone when your Layout design is complete; free premium badges are offered to outstanding designers. See Deployment Workflow.

I get "Version is duplicated!". What should I do?

Every deployment needs a new version for the same package. Increase version in manifest.json (for example 1.0.0 to 1.0.1) and run selldone deploy again. The CLI also prints the existing Layout's dashboard URL.

The CLI says manifest.json does not exist.

Run the CLI from the project root, the folder that contains manifest.json. The CLI always reads ./manifest.json (or ./manifest-debug.json in debug mode).

My package name is rejected.

package and version may contain only lowercase letters, digits, - and .. The server also requires package to be 12–64 characters. Use a stable slug such as my-custom-storefront and never change it after the first deployment. See manifest.json.

Which build script does the CLI run?

build-production, with npm or yarn. Add it to package.json if your project does not have it:

{ "scripts": { "build-production": "vite build" } }

The script must write the build to dist/. The CLI then zips the contents of dist/ into dist.zip.

The upload succeeded but the storefront does not load.

The CLI does not check artifact paths. Make sure the ZIP contains app/, an unhashed app/shop.js and app/shop.css at its root, with no wrapper folder, then validate:

python .agents/skills/package-selldone-storefront-layout/scripts/validate_layout_package.py dist --manifest manifest.json

See Packaging Layouts.

The browser login does not come back to the CLI.

The CLI waits for the redirect on http://localhost:3777/callback. Make sure no other program uses port 3777, that your browser can reach localhost, and that you completed the login in the browser window the CLI opened. If the callback arrives without a code, the browser shows Authentication failed - no code received. Run the command again.

How do I switch accounts or sign out?

Run selldone and choose Logout. This clears ~/.selldone-dev/.persist. The next Login or Deploy opens the browser login again.

The CLI asks me to choose npm or yarn every time.

The CLI detects the package manager from npm_config_user_agent, which is only set when npm or yarn launches the command. When you run selldone directly, it asks. Pick the one your project uses. See Package manager detection.

"New" stops at the setup step.

The New action runs <package manager> setup inside the cloned storefront folder. Yarn runs package scripts directly (yarn setup), while npm needs npm run setup. If the step fails with npm, finish it manually:

cd storefront
npm run setup

Then edit manifest.json with your package and name. If New reports that the /storefront directory exists, run it from a different folder or remove the old folder first.

How do I keep the CLI up to date?

npm update -g selldone-cli

The CLI is updated often, so update it each time you start working with it.

Related