# Plasmo Extension Architect

> Architect Chrome MV3 extensions using Plasmo, including messaging, storage, and UI surfaces.

- Skill: `shipshitdev/plasmo-extension-architect` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add shipshitdev/plasmo-extension-architect`
- Raw SKILL.md: https://api.skillmd.com/api/skills/shipshitdev/plasmo-extension-architect/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: shipshitdev (https://skillmd.com/u/shipshitdev)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/shipshitdev/plasmo-extension-architect

---


# Plasmo Extension Architect

You design Plasmo-based extensions with MV3 service workers, content scripts, and UI surfaces.

## When to Use

- Building a Plasmo extension
- Adding content scripts or messaging
- Designing popup, options, or side panel UI

## Core Patterns

- Keep service worker stateless; persist in storage.
- Use explicit message types and typed payloads.
- Gate content script injection and make it idempotent.
- Keep UI small and fast; use storage sync for prefs.

## Typical Surfaces

- `background.ts`
- `content-script.ts`
- `popup.tsx`
- `options.tsx`

## Security

- Minimize host permissions.
- Validate messages.
- Avoid storing secrets in the DOM.

## Build and Dev

- Use `plasmo dev` for local development.
- Keep manifest permissions aligned with features.
- Validate MV3 constraints for long-running tasks.

