mcpField
E
extension-manifest

extension-manifest

github.com/quangplDevelopment64207 installsUpdated 7w ago
Repository

About extension-manifest

A skill for analyzing Chrome extension code and generating a Manifest V3 manifest with the minimum required permissions. It guides extension developers through permission checks and user-facing warning reports.

Key features

  1. 01Detects WXT, CRXJS, and raw manifest setups
  2. 02Scans Chrome API usage
  3. 03Maps API calls to permissions
  4. 04Generates and validates manifest.json
  5. 05Reports permission warning text

Use cases

  1. 01Creating a manifest from an existing extension codebase
  2. 02Checking whether requested permissions can be reduced
  3. 03Reviewing a manifest before Chrome Web Store submission

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/quangpl/browser-extension-skills --skill extension-manifest

After installing, type/extension-manifestin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

references/
api-permission-map.md
manifest-fields-reference.md
manifest-templates.md
manifest-validation-checklist.md
permission-strategies.md
permission-warnings.md

Details

From the project README

Extension Manifest & Permissions Generator

🚀 Upgrade to Premium Get the Premium version at https://app.extensionbooster.net/dashboard/services/extension-ai-kit

Generate the best manifest.json based on current extension implementation. Analyze code to determine minimum permissions following Chrome docs and best practices.

Workflow

  1. Detect framework: check for wxt.config.ts, crxjs.config.ts, or raw manifest.json
  2. Scan the extension codebase for Chrome API usage
  3. Map each API call to its required permission (see references/api-permission-map.md)
  4. Generate manifest.json with minimum required permissions
  5. Validate against Chrome docs and CWS policies
  6. Report permission warnings users will see

CRXJS projects: Manifest is auto-generated from code and package.json. Override via crxjs.config.ts. See https://docs.crxjs.com/

Docs References

Quick Manifest Template

{
  "manifest_version": 3,
  "name": "Extension Name",
  "version": "1.0.0",
  "description": "Brief description. Max 132 chars for CWS.",
  "icons": {
    "16": "icons/icon16.png",
    "48": "icons/icon48.png",
    "128": "icons/icon128.png"
  },
  "action": {
    "default_popup": "popup.html",
    "default_icon": { "16": "icons/icon16.png" }
  },
  "permissions": [],
  "host_permissions": [],
  "background": { "service_worker": "background.js", "type": "module" }
}

Permission Analysis Steps

  1. Grep codebase for chrome. API calls
  2. Map each to permission using references/api-permission-map.md
  3. Prefer activeTab over tabs + host_permissions when possible
  4. Use optional permissions for non-essential features
  5. Check warning text in references/permission-warnings.md

Common Mistakes

ErrorFix
host_permissions inside permissionsMove URLs to separate host_permissions array
Using <all_urls>Narrow to specific domain patterns
Missing activeTabAdd when only needing current tab on user click
tabs permission overuseOnly needed for tab URL/title; use activeTab instead
content_security_policy as stringMust be object: { "extension_pages": "..." }
web_accessible_resources as string[]Use object with resources + matches

Key MV3 Rules

  1. host_permissions is separate from permissions
  2. Service workers replace background pages (no DOM, no window)
  3. content_security_policy is an object, not string
  4. Remote code execution banned (no eval, no CDN scripts)
  5. web_accessible_resources requires matches array
  6. Use chrome.scripting.executeScript() not tabs.executeScript()

References

  • references/manifest-fields-reference.md - All manifest fields with types and examples
  • references/manifest-templates.md - Ready-to-use templates (popup, content script, sidepanel, devtools)
  • references/manifest-validation-checklist.md - Pre-submission validation
  • references/api-permission-map.md - Chrome API → permission mapping
  • references/permission-warnings.md - User-facing warning text per permission
  • references/permission-strategies.md - Optional permissions, activeTab, escalation patterns

Related Skills

  • extension-create - Full project scaffolding
  • extension-analyze - Security audit and best practices

Comments

Markdown supported