Build or update the BlueBubbles external channel plugin for Moltbot (extension package, REST...
npx skills add xenitV1/claude-code-maestro --skill "browser-extension"
Install specific skill from multi-skill repository
# Description
Master specialized skill for building 2025/2026-grade browser extensions. Deep expertise in Manifest v3, Service Worker persistence (Alarms, Offscreen API), Side Panel API, and Cross-Browser compatibility.
# SKILL.md
name: browser-extension
description: Master specialized skill for building 2025/2026-grade browser extensions. Deep expertise in Manifest v3, Service Worker persistence (Alarms, Offscreen API), Side Panel API, and Cross-Browser compatibility.
allowed-tools: Read, Write, Edit, Glob, Grep, Bash
🌐 BROWSER EXTENSION: THE 2026 MASTERCLASS
Philosophy: Extensions are ephemeral, restricted, yet powerful. Persistence is an Art. Security is a Mandate.
Design Constraint: For UI/UX, Aesthetics, and Layout, YOU MUST REFER TO THEfrontend-designSKILL.
PERSISTENCE PARADOX GUARD (CRITICAL): Never rely on global variables or in-memory state in background scripts. AI-generated code frequently fails by assuming Manifest V3 service workers are persistent. They are NOT; they terminate after 30 seconds of inactivity. You MUST backup every piece of state tochrome.storageorIndexedDBimmediately upon change. This skill aims to eliminate "volatile-state" bugs typical of generic AI implementations. If data is not in durable storage, it does not exist.
🏗️ PROTOCOL 1: THE MANIFEST V3 CONSTITUTION
All extensions must be built on Manifest v3. No exceptions.
1. Manifest Blueprint:
* Service Workers: No persistent background pages. Use "background": { "service_worker": "background.js" }.
* No Remote Code: All scripts must be local. unsafe-eval is forbidden.
* Permissions: Principle of Least Privilege. Use optional_permissions where possible.
* Action UI: Prefer action over browser_action or page_action.
2. Side Panel Supremacy:
* Requirement: Use chrome.sidePanel for persistent, non-intrusive experiences.
* API: chrome.sidePanel.setOptions({ path: 'sidepanel.html', enabled: true }).
⚡ PROTOCOL 2: THE PERSISTENCE ENGINE (ANTI-TERMINATION)
Service Workers sleep. You must keep the logic alive.
1. The Alarm Pulse:
* Use chrome.alarms to wake up the Service Worker every 1-5 minutes for background sync.
2. The Offscreen Document (When needed):
* Use the offscreen API for tasks like DOM parsing, heavy calculations, or keeping the SW alive via periodic messaging.
3. State Management Protocol:
* NEVER rely on global variables.
* Mandatory: Use chrome.storage.session for transient session-only secrets.
* Mandatory: Use IndexedDB or chrome.storage.local for large datasets and persistent user data.
🔐 PROTOCOL 3: THE SECURITY FORTRESS
- Context Bridge Safety:
- Content Scripts are "Hostile Territory". Always sanitize data passed to the Service Worker via
chrome.runtime.sendMessage.
- Content Scripts are "Hostile Territory". Always sanitize data passed to the Service Worker via
- Declarative Net Request:
- Use
declarativeNetRequestfor blocking/modifying headers. Only usewebRequestas a fallback for Firefox if dynamic rules are critical.
- Use
🎨 PROTOCOL 4: DESIGN & UI/UX (INTEGRATED)
Direct Instruction: You are an extension developer, not a designer. You must outsource the "Soul" of the UI.
1. UI Execution:
* Popup/SidePanel: Follow the 8-Point Grid and Glassmorphism rules fromfrontend-design.
* Component Atomization: Use Atomic Design 2.0 principles.
* Friction: Ensure the popup interaction is < 400ms (Doherty Threshold).
🛠️ PROTOCOL 5: SCRIPT ENFORCEMENT (THE SENTINEL)
Every extension build MUST pass the high-tier audit suite.
1. manifest-auditor.js:
* Rule: MV3 compliance and CSP safety. No broad permissions.
2. persistence-check.js:
* Rule: Service Worker "Heartbeat" verification and State integrity.
3. asset-master.js:
* Rule: Icon dimensional audit and asset optimization.
📂 COGNITIVE AUDIT CYCLE
- Run
node scripts/js/manifest-auditor.js-> Clean? - Run
node scripts/js/persistence-check.js-> Heartbeat detected? - Run
node scripts/js/asset-master.js-> Assets optimized? - MANDATORY: Run
playwright test-> All paths pass? - Is it Manifest v3 compliant?
- Does the Service Worker handle termination gracefully (State stored)?
- Are permissions minimized?
- Is the UI justified by a "Narrative-First" screenplay from
frontend-design?Link: frontend-design
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.