CLI tool for uploading, updating, and publishing Chrome Extensions to the Chrome Web Store. The current stable version is 3.5.0, requiring Node >=18. The v4 pre-release (v4.0.0-0) requires Node 20+ and removes CLI flags for secrets, using only environment variables. Key differentiators: it's a simple, single-purpose CLI that automates packaging and deployment, supporting both .zip and .crx files. The project has frequent minor releases (3.0.0 went stable in late 2022) and is actively maintained by Fregante. Alternatives like chrome-webstore-upload (programmatic) or web-ext have different focus areas.
npm install chrome-webstore-upload-cliVerified import paths — ran on the pinned version, not inferred.
Sets required environment variables and uploads a zip file to the Chrome Web Store.
Upgrade Node.js to version 20 or later.
Set CHROME_WEBSTORE_CLIENT_ID, CHROME_WEBSTORE_CLIENT_SECRET, CHROME_WEBSTORE_REFRESH_TOKEN, and CHROME_WEBSTORE_EXTENSION_ID as env variables.
Upgrade Node.js to version 18 or later.
Use just `chrome-webstore-upload` (no command) to upload and publish in one step.
Use `chrome-webstore-upload upload --source=file` or `chrome-webstore-upload publish` (no --source).
Use `chrome-webstore-upload upload --source=file` to upload, then `chrome-webstore-upload publish` to publish.
Set the required environment variables: CHROME_WEBSTORE_CLIENT_ID, CHROME_WEBSTORE_CLIENT_SECRET, CHROME_WEBSTORE_REFRESH_TOKEN, and CHROME_WEBSTORE_EXTENSION_ID.
Check the path passed to --source; it can be relative or absolute. Ensure the file exists.