chrome-extension-architect
Privacy-first Chrome Manifest Version 3 extension architect - sidePanel design, MV3 service worker lifecycle, least-privilege permission audits, storage…
Skill by involvex
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/involvex-chrome-extension-architect
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/chrome-extension-architect
What's inside
- Skill name
chrome-extension-architect- Description
- Privacy-first Chrome Manifest Version 3 extension architect - sidePanel design, MV3 service worker lifecycle, least-privilege permission audits, storage strategy, and cross-browser sidebar patterns.
- License
- MIT
- Instructions
- 147 lines in SKILL.md · view on GitHub
Files (8)
- SKILL.md
- README.md · references/cross-browser/
- README.md · references/debugging/
- README.md · references/permissions/
- README.md · references/service-worker-lifecycle/
- README.md · references/sidepanel/
- README.md · references/storage-state/
- README.md · references/templates/
SKILL.md (first lines)
---
name: chrome-extension-architect
description: Privacy-first Chrome Manifest Version 3 extension architect - sidePanel design, MV3 service worker lifecycle, least-privilege permission audits, storage strategy, and cross-browser sidebar patterns.
references:
- sidepanel
- permissions
- service-worker-lifecycle
- storage-state
- cross-browser
- debugging
- templates
---
# Chrome Extension Manifest Version 3 Privacy-First Architect
Elite-level Chrome extension architecture and debugging workflow with **privacy-first defaults** and **least-privilege permissions**.
## Overview / When to Apply
Use this skill when the user asks about **browser extensions** (especially **Chrome MV3**) including:
- Side panel / sidebar UX (Chrome `chrome.sidePanel`, Firefox `sidebar_action`, Safari constraints)
- MV3 background **service worker lifecycle** bugs (lost globals, listeners, wakeups)
- Permission review, host permission minimization, privacy posture
- Storage / persistence choices (what survives popup close, SW termination, browser restart)
- Cross-browser strategy (Chrome/Edge vs Firefox vs Safari)
Default target: **Chrome MV3**. If the user doesn’t specify browser(s), assume **Chrome stable**.
## Non-Negotiable Rules (must follow)
1. **Start every major answer with target + scope.**
- Format: `Target: <Chrome MV3 | Firefox MV3 | Safari> | Scope: <side panel | permissions | lifecycle | storage | compat | debugging>`
2. **Privacy-first default.**
- Prefer designs that keep data on-device.
- Avoid collecting page content, browsing history, or host-wide access unless explicitly required.
3. **Least privilege, always.**
- Request only the minimal `permissions` + minimal `host_permissions`.
- Prefer: `activeTab`, `scripting` (targeted injection), `declarativeNetRequest` (when network rules are needed).
- Avoid: `<all_urls>`, `*://*/*`, broad `tabs`, unbounded host permissions.
4. **Every permission/API must be justified + privacy-risk tagged.**
- For each permission you mention, include:
- Why it’s needed
- What data access it enables
- Safer alternatives (if any)
5. **MV3 service worker reality check (single biggest bug source).**
- Service worker is **non-persistent**; globals can disappear at any time.
- Never rely on in-memory state for correctness.
- Register listeners at top-level synchronously.
6. **Side panel architecture must be modern.**
- Chrome: `chrome.sidePanel` + `setPanelBehavior({ openPanelOnActionClick: true })`.
- Use `setOptions()` to vary panel path per-tab / conditionally.
- Use layout awareness for LTR/RTL.
7. **Cross-browser: feature-detect, don’t UA-sniff.**
- Use conditional code paths (Chrome `chrome.sidePanel` vs Firefox `browser.sidebarAction`).
- State what won’t work on a given browser and why.
## How to Use This Skill (workflow)
### Step 0 — Confirm target environment
Ask (or infer) these quickly:
- Browser(s): Chrome / Edge / Firefox / Safari
- Manifest version: default to MV3
- UI mode: side panel, action popup, overlay in-page, options page
- Data sensitivity: what data is touched? (page content? URLs? credentials?)
### Step 1 — Pick the correct architecture (decision tree)
```
Need a persistent/reusable UI?
├─ Chrome/Edge -> sidepanel (chrome.sidePanel)
├─ Firefox -> sidebar_action / browser.sidebarAction
└─ Safari -> expect limitations; consider alternative UI (popup/options) or separate Safari strategy
Need to interact with the current tab?
├─ One-off user action -> activeTab + scripting
└─ Always-on per-site -> narrow host_permissions only for required domains
Need DOM / rendering in background?
└─ Use offscreen document (Chrome) or move work into panel/page context
```
Then read the matching references:
- Side panel design/API -> `references/sidepanel/README.md`
- Permission review -> `references/permissions/README.md`
- SW lifecycle -> `references/service-worker-lifecycle/README.md`
- Storage strategy -> `references/storage-state/README.md`
- Cross-browser -> `references/cross-browser/README.md`
- Debugging playbook -> `references/debugging/README.md`
- Copy/paste templates -> `references/templates/README.md`
### Step 2 — Produce an answer in a strict structure
Use this response skeleton for most user questions:
1. **Target + assumptions** (1–3 lines)
2. **Recommended architecture** (what runs where)
3. **Permissions proposal** (minimal set) + privacy warnings
4. **State & persistence plan** (storage choice) + lifecycle gotchas
5. **Code snippets** (manifest + SW + UI + messaging)
6. **Debug checklist** (what to check when it breaks)
## Examples (input → expected output)
### Example 1: “I want a persistent sidebar note-taker”
**Input**: “Build a MV3 extension with a sidebar that saves notes per tab. Minimal permissions.”
**Expected output (high level)**:
- Target: Chrome MV3From involvex/syncstuff, MIT.
More from involvex/syncstuff
- 0.437score
capacitor-app-upgrades
involvex
Guides the agent through upgrading a Capacitor app project to a newer major version.
SkillDFreshness: D★ 1Claude Code +9 - 0.437score
capacitor-push-notifications
involvex
Guides the agent through setting up and using push notifications in Capacitor apps using Firebase Cloud Messaging via the @capacitor-firebase/messaging plugin.
SkillDFreshness: D★ 1Claude Code +9 - 0.437score
capacitor-plugins
involvex
Guides the agent through installing, configuring, and using Capacitor plugins from five sources — official Capacitor plugins, Capawesome plugins, Capacitor…
SkillDFreshness: D★ 1Claude Code +9 - 0.437score
capacitor-plugin-upgrades
involvex
Guides the agent through upgrading a Capacitor plugin to a newer major version.
SkillDFreshness: D★ 1Claude Code +9 - 0.434score
cli-mastery
involvex
Interactive training for the GitHub Copilot CLI.
SkillDFreshness: D★ 1Claude Code +9 - 0.433score
bun-test
dale
Configure Bun's built-in test runner with Jest-compatible APIs.
SkillDFreshness: D★ 1Claude Code +9 - 0.433score
bun-build
dale
Create optimized production bundles with Bun's native bundler.
SkillDFreshness: D★ 1Claude Code +9 - 0.432score
capacitor-plugin-spm-support
involvex
Guides the agent through adding Swift Package Manager (SPM) support to an existing Capacitor plugin.
SkillDFreshness: D★ 1Claude Code +9 - 0.428score
bun-init
dale
Initialize a new Bun project with TypeScript and optimal configuration.
SkillDFreshness: D★ 1Claude Code +9 - 0.424score
bun-dev-server
dale
Set up high-performance development servers with Hot Module Replacement.
SkillDFreshness: D★ 1Claude Code +9 - 0.423score
bun-development
involvex
Modern JavaScript/TypeScript development with Bun runtime.
SkillDFreshness: D★ 1Claude Code +9 - 0.410score
Cli-Expert
involvex
Brief description of what this skill does
SkillDFreshness: D★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Apr 22, 2026 (6 months ago)
- Last release
- Jan 7, 2026 (9 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/involvex/syncstuff
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from involvex
- 0.474score
bun-win32
involvex
Win32 FFI binding lifecycle for bun-win32: generate, audit, and release @bun-win32/* packages (Win32 DLL bindings via bun:ffi on Windows).
SkillCFreshness: CClaude Code +9 - 0.437score
capacitor-plugin-upgrades
involvex
Guides the agent through upgrading a Capacitor plugin to a newer major version.
SkillDFreshness: D★ 1Claude Code +9 - 0.437score
capacitor-push-notifications
involvex
Guides the agent through setting up and using push notifications in Capacitor apps using Firebase Cloud Messaging via the @capacitor-firebase/messaging plugin.
SkillDFreshness: D★ 1Claude Code +9 - 0.437score
capacitor-plugins
involvex
Guides the agent through installing, configuring, and using Capacitor plugins from five sources — official Capacitor plugins, Capawesome plugins, Capacitor…
SkillDFreshness: D★ 1Claude Code +9 - 0.437score
capacitor-app-upgrades
involvex
Guides the agent through upgrading a Capacitor app project to a newer major version.
SkillDFreshness: D★ 1Claude Code +9 - 0.434score
cli-mastery
involvex
Interactive training for the GitHub Copilot CLI.
SkillDFreshness: D★ 1Claude Code +9
Cite this page
chrome-extension-architect skill. Agent Mart. https://agentmart.dev/skills/involvex-chrome-extension-architect (last updated 2026-10-24)