Skip to content

Repository files navigation

chrome-store-cli

English · 简体中文

CI npm license node

chrome-store-cli hero

Unofficial CLI for Chrome Web Store, Firefox Add-ons, and Microsoft Edge Add-ons.

Short command: cws · Version: 1.3.1

Disclaimer: This is an unofficial tool and is not affiliated with, endorsed by, or sponsored by Google, Mozilla, or Microsoft.

Feature overview


Install

Requires Node.js 18+. Binaries after install: cws, chrome-store-cli.

# Recommended — no global install
npx chrome-store-cli --help
npx chrome-store-cli init

# Project / global install
npm install -D chrome-store-cli
npm install -g chrome-store-cli
cws --help

Quick start

cws init
cws auth chrome                 # writes .env (gitignored — never commit secrets)
cws materials generate          # icons / screenshots / promo / listing stubs
cws materials translate --locales zh_CN
cws materials sync --scaffold --write
cws materials check
cws preflight
cws release --env dev           # testers first
cws status

Typical workflow

Multi-store:

cws firefox upload --dry-run
cws edge publish --dry-run
cws multi publish --stores chrome,firefox,edge --dry-run

Multi-store publish

Commands (highlights)

Area Commands
Core init, doctor, checklist, prepare, pack, upload, publish, config
DX preflight, auth, release, scan, status --watch, tutorial
Materials materials check/generate/translate/locales/sync
Multi-store firefox *, edge *, multi publish, adapt
Help reject-help, whatsnew, review-notes, report, skill install

Most commands accept --env <name> and --extension <name>.

Multi-locale listing (official CWS model)

Package _locales/<code> so the dashboard language dropdown appears; keep per-locale detailed description, screenshots, and optional promo video under store/listing/<locale>/. Small promo tile / marquee stay global only.

cws materials generate --listing --locales en,zh_CN --force
cws materials translate --locales zh_CN,ja --force
cws materials sync --scaffold --write
cws materials locales
cws materials check

Multi-locale listing layout

Configuration

Secrets belong in environment variables or .env (gitignored). Prefer empty secret fields in cws.config.json.

See docs/credentials.md and .env.example.

cws pack --env dev --extension main
cws action-init   # GitHub Action template

For AI agents (main entry)

This repo ships an Agent Skill so Cursor / Claude / Codex can run the same publish workflow in any extension project.

Install the skill

# A) skills.sh CLI (recommended for discovery + telemetry → skills.sh ranking)
npx skills add nickylin/chrome-store-cli -g -y

# B) After npm / GitHub install of the CLI
cws skill install

# C) From a clone of this repo
npm run skill:install

Installs to ~/.cursor/skills/chrome-store-cli (and ~/.agents/skills when present).

Then in any extension repo say: “按 chrome-store-cli skill 发版” / “use chrome-store-cli skill”.

skills.sh

Why not a separate skill repo?

Keep skill + CLI in one repo so versions stay aligned. skills.sh indexes public GitHub skills via npx skills add telemetry (no separate upload form). See docs/npm-publish.md for npm release steps.

Development

npm install
npm run build
npm test
npm run selftest

Docs

License

MIT

About

Unofficial CLI for Chrome / Firefox / Edge extension store publishing (cws)

Topics

Resources

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages