chrome-extension-developer

Builds Chrome Extensions using Manifest V3 with service workers, content scripts, and message passing.

1|Updated Aug 17, 2025
One-click install
npx skills add https://github.com/ratnesh-maurya/mdconverter --skill chrome-extension-developer-ratnesh-maurya
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: chrome-extension-developer
Source: https://github.com/ratnesh-maurya/mdconverter/tree/main/.claude/skills/chrome-extension-developer
Command: npx skills add https://github.com/ratnesh-maurya/mdconverter --skill chrome-extension-developer-ratnesh-maurya

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Building Chrome Extensions requires navigating Manifest V3 architecture, ephemeral service workers, and cross-context communication, which often leads to broken message flows and permission issues. ## Core Features & Use Cases - Manifest V3 Architecture: Guides the design of extensions using service workers instead of legacy background pages. - Cross-Context Communication: Implements reliable message passing between background scripts, content scripts, and popup or options pages. - Security and Permissions: Applies least-privilege permissions, optional permissions, and safe DOM practices. - Use Case: When migrating an extension from Manifest V2 to V3, use this Skill to restructure the background script as a service worker and replace setTimeout-based scheduling with chrome.alarms. ## Quick Start Ask the AI to scaffold a Manifest V3 Chrome Extension with a service worker, a content script, and message passing between them.

Frequently Asked Questions about chrome-extension-developer

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a Chrome Extension with Manifest V3?

Define a manifest.json with manifest_version 3, register a background service worker instead of a background page, and declare content scripts with match patterns. Use chrome.runtime messaging to connect the service worker, content scripts, and popup pages.

How to migrate a Chrome Extension from Manifest V2 to V3?

Replace persistent background pages with an ephemeral service worker, move network request blocking to declarativeNetRequest, and update host permissions into the host_permissions field. Replace setTimeout scheduling with chrome.alarms since service workers can be terminated.

Why does my Chrome extension service worker stop working?

Manifest V3 service workers are ephemeral and become inactive after idle periods, killing timers and in-memory state. Use chrome.alarms for scheduled tasks and chrome.storage.local or chrome.storage.sync for persistent data instead of in-memory variables.

How do content scripts communicate with the background service worker?

Use chrome.runtime.sendMessage from the content script and chrome.runtime.onMessage.addListener in the service worker. Return true from the listener to keep the message channel open for asynchronous sendResponse calls.

Can I use localStorage in a Chrome extension service worker?

No, localStorage is unavailable in service workers. Use chrome.storage.local for device-specific data or chrome.storage.sync for data synchronized across the user's signed-in browsers.