Token导航 LogoToken导航TokenDH.com
研究检索操作浏览器github未标认证来源可访问许可证需确认审计通过

chrome-store-submitChrome 商店提交

Agent Skill

chrome-store-submit 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

474

周安装

19

GitHub Stars

3

下载量

154
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:chrome-store-submit(Chrome 商店提交)
来源仓库:https://github.com/mrsekut/agent-skills
仓库路径:skills/chrome-store-submit
安装命令:
npx skills add https://github.com/mrsekut/agent-skills --skill chrome-store-submit
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/mrsekut/agent-skills --skill chrome-store-submit

简介

自动化 Chrome Web Store 扩展提交流程,使用 Playwright 操作。

  • 生成隐私政策文档、扫描上传状态与填写审核信息。
  • 要求 ZIP 包已打包且 manifest.json 有效。
  • 涉及 OAuth 登录与仪表盘操作,部分步骤需人工介入。
  • chrome-store-submit 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Chrome Web Store Submission

Automate the Chrome Web Store new extension submission process using playwright-mcp browser automation.

Prerequisites

  • playwright-mcp configured as MCP server. See references/setup.md if not set up.
  • Pillow installed (pip install Pillow) for image generation.
  • Extension source code with valid manifest.json in the working directory.
  • Extension packaged as ZIP file ready for upload.

Workflow

  1. Gather extension info from source code
  2. Create privacy policy page — generate PRIVACY_POLICY.md and push to GitHub
  3. Launch browser — user logs in — upload ZIP
  4. Scan all tabs to identify required fields and current state
  5. Ask user only for info that cannot be determined from source code
  6. Generate store images and listing text
  7. Fill all forms across all tabs
  8. Save as draft and prompt user to review

Step 1: Gather Extension Info

Read these files from the project to extract info:

manifest.json → name, short_name, description, permissions, version, icons
README.md → feature descriptions, usage details (if exists)

Extract:

  • name (max 75 chars for store)
  • description (used as short description, max 132 chars)
  • permissions (needed for privacy justification)
  • version
  • icons (path to largest icon for image generation)

Step 2: Create Privacy Policy Page

Chrome Web Store requires a privacy policy URL. Repository top pages or unrelated pages are not accepted as a valid privacy policy and will be rejected. A dedicated privacy policy page must be created.

2-1: Generate PRIVACY_POLICY.md

Based on manifest.json permissions and source code behavior gathered in Step 1, generate a PRIVACY_POLICY.md file in the extension's repository root.

Write the content in the user's target language (default to English if unknown), using the following structure:

# Privacy Policy for <Extension Name>

Last updated: <today's date>

## Overview
<Extension Name> ("the Extension") is a browser extension that <1-sentence description>.

## Data Collection
<Based on permissions, specifically describe what data is collected. If no data is collected, explicitly state: "This extension does not collect, store, or transmit any personal data.">

## Data Usage
<Describe the purpose of collected data. If none is collected: "No user data is collected or used.">

## Data Storage
<Describe how and where data is stored. If local only, state that explicitly.>

## Data Sharing
<State whether data is shared with third parties. If not, state that explicitly.>

## Permissions
<Explain why each permission from manifest.json is needed, one line per permission.>

## Changes to This Privacy Policy
We may update this Privacy Policy from time to time. Any changes will be posted on this page with an updated revision date.

## Contact
If you have any questions about this Privacy Policy, please create an issue on the [GitHub repository](<repo URL>).

Key points:

  • Even extensions with minimal permissions that collect no personal data must explicitly state so.
  • Explain each permission's purpose individually (e.g., activeTab → "Used to access the current tab's content only when the user activates the extension").
  • Avoid vague wording — be specific about what the extension does and does not do.

2-2: Push to GitHub and Get URL

  1. Show the generated PRIVACY_POLICY.md to the user for review.
  2. Ask the user to:

- Git commit and push PRIVACY_POLICY.md. - Confirm the GitHub repository is public (private repository pages are not accessible).

  1. Record the privacy policy URL in the format: https://github.com/<owner>/<repo>/blob/main/PRIVACY_POLICY.md

This URL will be used in Step 7 for the Privacy Practices tab.

Note: A GitHub repository top page (https://github.com/<owner>/<repo>) is not accepted as a valid privacy policy. Always use a direct link to the PRIVACY_POLICY.md file.

Step 3: Browser Launch and Upload

  1. Navigate to https://chrome.google.com/webstore/devconsole
  2. Tell the user: "Please log in to your Google Developer account in the browser. Let me know when you're done."
  3. Wait for user confirmation.
  4. Click "New item" or equivalent upload button.
  5. Use browser_file_upload to upload the ZIP file.
  6. Wait for upload to complete and dashboard to load.

Step 4: Scan All Tabs

After upload, navigate through all tabs in the dashboard to identify required fields.

  1. Store Listing tab: Use browser_snapshot to check required fields and their current state.
  2. Privacy Practices tab: Navigate via sidebar → browser_snapshot.
  3. Distribution tab: Navigate via sidebar → browser_snapshot.

For each tab, record:

  • Required field names and input types (text, dropdown, file upload, checkbox, etc.)
  • Fields already populated (some are auto-filled from manifest.json)
  • Empty required fields

Step 5: Ask User for Missing Info

Cross-reference source code info from Step 1 with form state from Step 4. Only ask the user about required fields that cannot be filled automatically.

Fields likely determinable from source code (do not ask):

  • Extension name, description (from manifest.json)
  • Permission justifications (inferred from permissions + source code usage)
  • Remote code declaration (typically No for MV3)
  • Data collection status (inferred from permissions and source code)

Fields that typically require user input:

  • Target language for store listing
  • Primary category
  • Brand color (hex, for image generation)
  • Visibility (Public / Unlisted / Private)

Privacy Policy URL is already generated in Step 2 — no need to ask.

These are general tendencies only. Always decide based on actual form state. Do not ask unnecessary questions.

Step 6: Generate Store Images and Listing Text

Images

python3 scripts/generate_store_images.py <icon_path> <output_dir> --name "Extension Name" --color "#hexcolor"

This generates:

  • store_icon_128.png (128x128, with 16px transparent padding)
  • promo_tile_440x280.png (440x280, small promo tile)
  • marquee_1400x560.png (1400x560, marquee tile)
  • screenshot_1280x800.png (1280x800, placeholder screenshot)

Ask the user if they want to use these generated images or provide their own.

Listing Text

Based on manifest.json info and README, generate in the user's target language:

  • Detailed description: 2-4 paragraphs covering what the extension does, key features, and how to use it. No HTML, plain text only.
  • Single purpose description: 1-2 sentences clearly stating the extension's primary functionality.
  • Permission justifications: One sentence per permission explaining why it's needed.

Show all generated text to the user for approval before filling forms.

Step 7: Fill All Forms

Navigate back to each tab and fill in the forms. Use browser_snapshot before each field interaction to verify the current state.

Store Listing Tab

  1. Fill Detailed Description textarea
  2. Select Primary Category from dropdown
  3. Select Language from dropdown
  4. Upload Store Icon (128x128)
  5. Upload Screenshots (1280x800)
  6. Upload Small Promo Tile (440x280)
  7. Optionally upload Marquee Promo Tile

Privacy Practices Tab

  1. Fill Single Purpose Description
  2. Fill Permission Justifications (one per permission from manifest)
  3. Set Remote Code Declaration
  4. Handle Data Usage Disclosures and Limited Use Certification
  5. Enter Privacy Policy URL (use the GitHub URL of PRIVACY_POLICY.md generated in Step 2)

Distribution Tab

  1. Set Visibility (Public/Unlisted/Private)
  2. Set Geographic Distribution (default: All regions)

Step 8: Save as Draft

  1. Click "Save Draft" button (NOT "Submit for Review")
  2. Verify save succeeded via browser_snapshot
  3. Tell user: "Draft saved successfully. Please review all fields in the browser before submitting for review."

Important Notes

  • Always use browser_snapshot before interacting with page elements to find correct selectors.
  • Chrome Web Store dashboard is a SPA; wait after navigation for content to load.
  • If a form field is not found, take a screenshot and ask the user for guidance.
  • Never click "Submit for Review" — only save as draft.
  • For form field details and constraints, see references/store-fields.md.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

38.44%
按下载量换算59

Claude

27.42%
按下载量换算42

Cursor

17.52%
按下载量换算27

Gemini CLI

9.81%
按下载量换算15

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills