OpenClaw CWS Publisher
by @zack-dev-cm
OpenClaw CWS Publisher is a public ClawHub Chrome Web Store publisher skill. Use it when the user says "chrome web store publisher", "extension release publi...
clawhub install openclaw-cws-publisherπ About This Skill
name: openclaw-cws-publisher description: OpenClaw CWS Publisher is a public ClawHub Chrome Web Store publisher skill. Use it when the user says "chrome web store publisher", "extension release publisher", "CWS publisher", or wants to package and harden a Chrome extension with CWS package, listing, design, local E2E, latest Chrome, competitor, leak, GitHub, and ClawHub gates. version: 0.3.3 homepage: https://github.com/zack-dev-cm/openclaw-cws-publisher license: MIT user-invocable: true metadata: {"openclaw":{"homepage":"https://github.com/zack-dev-cm/openclaw-cws-publisher","skillKey":"openclaw-cws-publisher","requires":{"bins":["git","gh","npx"],"anyBins":["python3","python"]},"install":[{"kind":"brew","label":"Install GitHub CLI","formula":"gh","bins":["gh"]}]}}
OpenClaw CWS Publisher
Search intent: chrome web store publisher, extension release publisher, cws publisher, chrome extension publish
Goal
Prepare a Chrome extension repo for release with less metadata drift:
Use This Skill When
Operating Order
1. Build the extension ZIP intended for upload.
- python3 {baseDir}/scripts/build_extension_zip.py --extension-dir
2. Validate the exact ZIP, source manifest, and listing contract.
- python3 {baseDir}/scripts/validate_cws_package.py --zip
- Default posture blocks stale ZIPs, Manifest V2, tabs, debugger, , persistent host permissions, declarative content scripts, remote script/eval patterns, missing permission justifications, privacy-practice drift, and no-host ZIPs whose listing still carries host-permission copy.
- If a product genuinely needs host permissions, use --allow-host-permissions only after the listing and reviewer instructions explain the shipped user-facing need.
3. Scan tracked and untracked non-ignored files for obvious publish leaks.
- python3 {baseDir}/scripts/scan_publish_surface.py --root
4. Run local reviewer/E2E gates.
- python3 {baseDir}/scripts/run_local_e2e_gates.py --repo-root
- The script discovers check:cws, check:public, check:public:visual, test:e2e:reviewer, test:e2e, and scripts/reviewer_gate.py when present.
5. Enforce the design/UI/UX evidence gate.
- python3 {baseDir}/scripts/check_design_gate.py --design-report
- Every changed public page, popup, CWS screenshot, promo tile, hero, and media asset must score at least 8/10 for product clarity, visual trust, evidence integrity, responsive polish, accessibility, and claim alignment.
6. Enforce public landing and SEO gates.
- The CWS-facing site must have a polished product-first landing page, a
readable privacy policy, support page, reviewer guide, robots.txt,
sitemap.xml, canonical URLs, Open Graph/Twitter metadata, and factual
SoftwareApplication JSON-LD when applicable.
- Prefer Cloudflare Pages or another owned HTTPS host as the canonical CWS
listing surface. GitHub source-viewer URLs and temporary fallback mirrors
must not remain in active listing metadata.
- Block submission when SEO metadata points to an old domain, when public
pages look like policy stubs, or when privacy/support/reviewer pages do
not reflect the exact package permissions and user-data behavior.
7. Check current Chrome Stable release data.
- python3 {baseDir}/scripts/check_chrome_release.py --tested-chrome-version
- Source: Chrome for Testing last-known-good Stable feed, cross-checked with ChromiumDash, Chrome Releases, and Chrome for Developers release notes when making decisions.
8. Run a competitor/differentiation check.
- python3 {baseDir}/scripts/check_competitors.py --listing-json
- Record at least three comparable products or explicit substitutes; flag risky claims like #1, best, official, and close-copy positioning.
9. Generate launch metadata.
- python3 {baseDir}/scripts/generate_launch_manifest.py --repo-root
- If you already export CWS_PUBLIC_SITE_BASE, you can omit --public-site-base and the script will reuse that public reviewer-facing base.
10. Render publish commands.
- python3 {baseDir}/scripts/render_publish_commands.py --manifest
Rules
activeTab plus scripting after an explicit user gesture over persistent host permissions.8/10.Current Policy Anchors
activeTab plus scripting model: https://developer.chrome.com/docs/extensions/develop/concepts/activeTabBundled Scripts
scripts/build_extension_zip.pyscripts/validate_cws_package.pyscripts/scan_publish_surface.pyscripts/run_local_e2e_gates.pyscripts/check_design_gate.pyscripts/check_chrome_release.pyscripts/check_competitors.pyscripts/generate_launch_manifest.pyscripts/render_publish_commands.pyπ Constraints
activeTab plus scripting after an explicit user gesture over persistent host permissions.8/10.