Build Browser Extensions with Manifest V3
A Manifest V3 browser-extension skill covering architecture, content scripts, storage, monetization, and store publishing.
Why it matters
Develop robust browser extensions for Chrome and Firefox, leveraging Manifest V3 architecture, content scripts, and service workers to create powerful user tools.
Outcomes
What it gets done
Architect modern browser extensions using Manifest V3.
Implement content scripts for web page interaction.
Develop background service workers for extension logic.
Publish extensions to the Chrome Web Store.
Install
Add it to your toolbox
Run in your project directory:
curl -fsSL https://spark.entire.vc/get/ag-browser-extension-builder | bash Overview
Browser Extension Builder
A Manifest V3 browser-extension skill covering architecture, content scripts, chrome.storage persistence, monetization, and Chrome Web Store publishing. Use it when building a browser extension's architecture, content scripts, storage, or monetization, not for the popup UI framework or personal one-off tools.
What it does
Browser Extension Builder is an expert skill for building Chrome, Firefox, and cross-browser extensions that people actually install and use daily, covering extension architecture, Manifest V3, content scripts, popup UIs, monetization strategies, and Chrome Web Store publishing. Its standard project structure separates manifest.json, a popup/ UI, a content/ script that runs on web pages, a background/service-worker.js for background logic, an options/ settings page, and icon assets. The Manifest V3 template wires these together:
{
"manifest_version": 3,
"name": "My Extension",
"version": "1.0.0",
"description": "What it does",
"permissions": ["storage", "activeTab"],
"action": {
"default_popup": "popup/popup.html",
"default_icon": {
"16": "icons/icon16.png",
"48": "icons/icon48.png",
"128": "icons/icon128.png"
}
},
"content_scripts": [{
"matches": ["<all_urls>"],
"js": ["content/content.js"]
}],
"background": {
"service_worker": "background/service-worker.js"
},
"options_page": "options/options.html"
}
The popup, background service worker, and content script communicate through chrome.runtime messaging and shared chrome.storage.
When to use - and when NOT to
Use this skill when starting a new browser extension, writing content scripts that read or modify page content, persisting settings via chrome.storage.local (5MB limit) or chrome.storage.sync (100KB total, 8KB per item), planning extension monetization, or preparing a Chrome Web Store submission. Since extensions can't call payment processors like Stripe directly, monetization routes through your own backend - the popup opens your website with a user ID, and after payment your API is polled to sync a premium-status flag back into extension storage; Chrome itself discontinued built-in payments. It ships validation checks with severity and fix actions: using deprecated Manifest V2 (High - migrate to V3 with a service worker), requesting excessive permissions (High - use scoped host_permissions and optional_permissions), missing chrome.runtime.lastError checks (Medium), hardcoded URLs (Medium - move to storage or manifest config), and missing store-required icon sizes (Low). Don't use it for the extension's popup UI framework itself (routed to a frontend skill), a purely personal one-off tool, or an AI-powered extension's model integration, all of which are delegated to other skills.
Inputs and outputs
Input is the extension's intended functionality and target browsers; output is a Manifest V3 project structure, content-script code for reading or injecting UI onto pages, an async storage wrapper around the callback-based chrome.storage API, and a monetization flow (freemium, one-time, subscription, donation, or affiliate) wired through an external payment backend.
Who it's for
Developers building Chrome, Firefox, or cross-browser extensions - from popup tools to AI browser assistants - who want proven Manifest V3 architecture, content-script patterns, and store-safe monetization rather than assembling extension structure from scratch.
FAQ
Common questions
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.