🛠️ Openclaw Cws Publisher
Chrome拡張機能をCWSパッケージ、デザイン、競合分析、GitHub連携などの多角的な視点から安全に公開・管理するSkill。
📜 元の英語説明(参考)
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.
🇯🇵 日本人クリエイター向け解説
Chrome拡張機能をCWSパッケージ、デザイン、競合分析、GitHub連携などの多角的な視点から安全に公開・管理するSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-17
- 取得日時
- 2026-05-17
- 同梱ファイル
- 11
💬 こう話しかけるだけ — サンプルプロンプト
- › Openclaw Cws Publisher を使って、最小構成のサンプルコードを示して
- › Openclaw Cws Publisher の主な使い方と注意点を教えて
- › Openclaw Cws Publisher を既存プロジェクトに組み込む方法を教えて
これをClaude Code に貼るだけで、このSkillが自動発動します。
📖 Claude が読む原文 SKILL.md(中身を展開)
この本文は AI(Claude)が読むための原文(英語または中国語)です。日本語訳は順次追加中。
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:
- package the extension
- validate the exact ZIP intended for upload against source manifest and CWS listing copy
- scan tracked and untracked non-ignored files for obvious leak risks
- run local reviewer/E2E gates
- enforce design, UI, screenshot, and claim-alignment score gates
- check current Chrome Stable release data before declaring E2E coverage fresh
- run a lightweight competitor and positioning differentiation check
- detect repo-local reviewer gates
- generate GitHub metadata
- generate optional ClawHub metadata and explicit tags
- render reproducible publish commands
Use This Skill When
- the user wants a Chrome extension repo prepared for GitHub release
- the user wants CWS ZIP/listing/privacy/design/E2E readiness checked before dashboard submission
- the user wants ClawHub tags and GitHub topics kept in sync
- the user wants a leakage check before public release
- the user already has a specific repo path to release
Operating Order
- Build the extension ZIP intended for upload.
python3 {baseDir}/scripts/build_extension_zip.py --extension-dir <repo>/extension --out <zip>
- Validate the exact ZIP, source manifest, and listing contract.
python3 {baseDir}/scripts/validate_cws_package.py --zip <zip> --source-manifest <repo>/extension/manifest.json --listing-json <repo>/docs/cws/listing.json- Default posture blocks stale ZIPs, Manifest V2,
tabs,debugger,<all_urls>, 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-permissionsonly after the listing and reviewer instructions explain the shipped user-facing need.
- Scan tracked and untracked non-ignored files for obvious publish leaks.
python3 {baseDir}/scripts/scan_publish_surface.py --root <repo> --json-out <json> --markdown-out <md>
- Run local reviewer/E2E gates.
python3 {baseDir}/scripts/run_local_e2e_gates.py --repo-root <repo> --json-out <json> --markdown-out <md>- The script discovers
check:cws,check:public,check:public:visual,test:e2e:reviewer,test:e2e, andscripts/reviewer_gate.pywhen present.
- Enforce the design/UI/UX evidence gate.
python3 {baseDir}/scripts/check_design_gate.py --design-report <repo>/docs/design-gate.json --screenshot-metadata <repo>/assets/listing/screenshot-1.png.source.json- Every changed public page, popup, CWS screenshot, promo tile, hero, and media asset must score at least
8/10for product clarity, visual trust, evidence integrity, responsive polish, accessibility, and claim alignment.
- Check current Chrome Stable release data.
python3 {baseDir}/scripts/check_chrome_release.py --tested-chrome-version <local chrome version> --json-out <json> --markdown-out <md>- Source: Chrome for Testing last-known-good Stable feed, cross-checked with ChromiumDash, Chrome Releases, and Chrome for Developers release notes when making decisions.
- Run a competitor/differentiation check.
python3 {baseDir}/scripts/check_competitors.py --listing-json <repo>/docs/cws/listing.json --competitors-json <repo>/docs/cws/competitors.json --min-competitors 3 --markdown-out <md>- Record at least three comparable products or explicit substitutes; flag risky claims like
#1,best,official, and close-copy positioning.
- Generate launch metadata.
python3 {baseDir}/scripts/generate_launch_manifest.py --repo-root <repo> --owner <github-owner> --public-site-base <https://public-site.example/> --out <json>- If you already export
CWS_PUBLIC_SITE_BASE, you can omit--public-site-baseand the script will reuse that public reviewer-facing base.
- Render publish commands.
python3 {baseDir}/scripts/render_publish_commands.py --manifest <json> --out <md>
Rules
- Operate on the repo path the user named, not on arbitrary sibling directories.
- Inspect the ZIP intended for upload, not only the source tree, before calling a Chrome Web Store package ready.
- Prefer
activeTabplusscriptingafter an explicit user gesture over persistent host permissions. - Do not publish when the leak scan has unresolved findings.
- Do not publish when the target repo has a reviewer gate and it fails.
- Do not publish when package/listing/privacy claims disagree with the ZIP manifest.
- Do not publish when the design/UI gate is missing or any score is below
8/10. - Do not publish when local E2E was only run on an older Chrome milestone without recording the current Stable release check.
- Do not publish listing copy that claims official affiliation, best-in-class status, background crawling, server sync, or broad permissions unless the shipped product and public evidence prove it.
- Keep GitHub topics and ClawHub tags explicit in the generated manifest.
- Use a dedicated public site base for support, privacy-policy, and reviewer-instructions links when the extension has one.
- If a Chrome Web Store draft is already pending review, do not recommend canceling or replacing it unless a verified acceptance blocker exists.
- Do not assume generated artifacts should be committed.
Current Policy Anchors
- Chrome Web Store Program Policies: https://developer.chrome.com/docs/webstore/program-policies/policies
- Manifest V3 remote-code requirements: https://developer.chrome.com/docs/webstore/program-policies/mv3-requirements
activeTabplusscriptingmodel: https://developer.chrome.com/docs/extensions/develop/concepts/activeTab- Permission warnings and host permission warnings: https://developer.chrome.com/docs/extensions/develop/concepts/declare-permissions
- Chrome release notes: https://developer.chrome.com/release-notes/
- Chrome release feed: https://chromiumdash.appspot.com/fetch_releases
Bundled 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
同梱ファイル
※ ZIPに含まれるファイル一覧。`SKILL.md` 本体に加え、参考資料・サンプル・スクリプトが入っている場合があります。
- 📄 SKILL.md (7,266 bytes)
- 📎 scripts/build_extension_zip.py (1,078 bytes)
- 📎 scripts/check_chrome_release.py (6,649 bytes)
- 📎 scripts/check_competitors.py (6,463 bytes)
- 📎 scripts/check_design_gate.py (4,215 bytes)
- 📎 scripts/common.py (1,995 bytes)
- 📎 scripts/generate_launch_manifest.py (6,282 bytes)
- 📎 scripts/render_publish_commands.py (4,452 bytes)
- 📎 scripts/run_local_e2e_gates.py (4,926 bytes)
- 📎 scripts/scan_publish_surface.py (3,709 bytes)
- 📎 scripts/validate_cws_package.py (9,904 bytes)