opção
LarLar Skill Automação do navegador chrome-extensions

Crie e publique extensões para o Chrome seguindo as melhores práticas do Manifest V3. Utilize essa habilidade sempre que o usuário solicitar a criação, modificação, depuração ou compreensão de extensões, complementos para o navegador Chrome, ou qualquer recurso relacionado à API de extensões do Chrome. A ação será acionada na menção de: ‘extensão Chrome’, ‘extensão de navegador’, ‘manifest.json’, ‘content script’, ‘service worker’ (no contexto do navegador), ‘popup’ (no contexto de extensões do Chrome), ‘side panel’, ‘chrome.* API’, ‘declarativeNetRequest’, ‘omnibox’, ‘context menu’ (em extensões).

...Expandir tudo
10
Tempo atualizado 26 de Agosto de 2026

Sobre extensões do Chrome

Guia para criar extensões do Chrome com qualidade de produção usando Manifest V3 e publicá-las na Chrome Web Store. Ele é acionado sempre que há necessidade de criar, modificar, depurar ou entender extensões do navegador Chrome e as APIs chrome.* relacionadas, incluindo scripts de conteúdo, service workers, popups, painéis laterais, declarativeNetRequest, omnibox, menus de contexto e scripts do usuário, além de tarefas de publicação na Web Store, como justificativas de permissões e políticas de privacidade.

A parte voltada à criação está organizada em um conjunto de regras obrigatórias que abordam as causas mais comuns de extensões que não funcionam corretamente. Exemplos incluem referenciar apenas arquivos de ícone que realmente existem (ou omitir completamente os ícones), fornecer um gatilho explícito para abrir um painel lateral (apenas um default_path não é suficiente para que ele se abra), executar código apenas dentro de iframes sandboxed, já que o CSP da extensão bloqueia eval e scripts inline, declarar a permissão para abas antes de ler tab.url, sempre usar async/await em vez de cadeias .then(), agrupar operações no DOM em scripts de conteúdo para evitar bloqueio da thread principal, e nunca armazenar estado em variáveis de service worker, pois eles são temporários (use chrome.storage e chrome.alarms em vez de setTimeout). Outras regras visam estabilizar o ID da extensão para o chrome.identity OAuth por meio de uma chave do manifesto, fornecer feedback ao usuário após ações nos menus de contexto, utilizar o LanguageModel (Prompt API) em service worker, popups e painéis laterais, e exigir uma chave de ação no manifesto antes de usar chrome.action.

Use este guia quando deseja extensões que funcionem desde a primeira tentativa e passem pela revisão, em vez de se dedicar a resolver problemas sutis relacionados ao Manifest V3. Cada regra compara código incorreto com código correto e indica um arquivo de referência mais detalhado (para ícones, painéis laterais, sandbox do CSP, gerenciamento de abas, scripts de conteúdo, service workers, autenticação/identidade, menus de contexto e o Prompt API). Uma segunda seção aborda a publicação na Chrome Web Store, incluindo a preparação da extensão, como lidar com rejeições de revisão, redigir justificativas de permissões e elaborar políticas de privacidade, sendo útil em todo o ciclo de vida, desde a primeira criação até a listagem na loja.

Perguntas Frequentes

Quando devo usar essa habilidade?

Sempre que for necessário criar, modificar, depurar ou entender extensões do Chrome e as APIs relacionadas, ou ao publicar na Chrome Web Store, incluindo justificativas de permissões e políticas de privacidade.

Por que meu painel lateral não se abre, mesmo estando definido no manifesto?

Definir side_panel.default_path não faz com que o painel se abra; é preciso adicionar um gatilho, como chrome.sidePanel.open() ao clicar em uma ação ou em um botão do popup, ou definir a opção openPanelOnActionClick.

Por que o estado da minha extensão está sendo perdido?

Service workers são temporários e são encerrados após aproximadamente 30 segundos de inatividade, fazendo com que o estado armazenado em variáveis se perca; armazene esse estado em chrome.storage e leia-o em cada evento, utilizando chrome.alarms em vez de setTimeout/setInterval.

Como executar código dinâmico considerando o CSP da extensão?

O CSP da extensão bloqueia eval, new Function e scripts inline; portanto, execute o código apenas em iframes sandboxed (por meio do sandbox do manifesto mais postMessage), ou por meio de um URL de Blob ou srcdoc que crie uma origem separada.

Ele abrange o Prompt API?

Sim. O LanguageModel API funciona em service worker, popups e painéis laterais sem necessidade de permissões adicionais, e as extensões também têm acesso ao LanguageModel.params(), que não está disponível na versão web.

Todos os Arquivos

23 arquivosreferences/extensions/context-menus.md1,8 KBVisualizarreferences/extensions/auth-identity.md3,9 KBVisualizarreferences/extensions/declarative-net-request.md2,7 KBVisualizarreferences/extensions/message-passing.md4,1 KBVisualizarreferences/extensions/api-calling.md2,1 KBVisualizarreferences/extensions/csp-sandbox.md4,7 KBVisualizarreferences/extensions/media-capture.md4,7 KBVisualizarreferences/extensions/prompt-api.md3,7 KBVisualizarreferences/extensions/tab-management.md3,7 KBViewSKILL.md25,5 KBVisualizarreferences/extensions/content-scripts.md3,4 KBVisualizarreferences/extensions/devtools.md2,8 KBVisualizarreferences/extensions/omnibox.md1,8 KBVisualizarreferences/extensions/side-panel.md4,4 KBVisualizarreferences/webstore/chromewebstore-template.md5,6 KBVisualizarreferences/webstore/review-checklist.md6,8 KBVisualizarreferences/extensions/icons.md2,7 KBVisualizarreferences/extensions/popup-ui.md2,3 KBVisualizarreferences/extensions/storage.md1,9 KBVisualizarreferences/webstore/store-listing.md7,8 KBVisualizarreferences/extensions/service-worker.md4,5 KBVisualizarreferences/extensions/user-scripts.md9,1 KBVisualizarreferences/webstore/privacy-policy.md4,1 KB

Instalar chrome-extensions

Baixe e extraia os arquivos de habilidades para o seu diretório .claude/skills/.

Baixar ZIP

Clone o repositório e copie os arquivos da habilidade para o seu projeto.

git clone # Copy SKILL.md to your .claude/skills/ directory

Copiar Copiar
Configuração rápida: Copie a pasta da habilidade para .claude/skills/Claude, que detectará e utilizará automaticamente essa habilidade.

Habilidades relacionadas

playwright-cli
Tempo atualizado 29 de Junho de 2026
frontend-testing-best-practices
Tempo atualizado 7 de Julho de 2026
Playwright Browser Automation
Tempo atualizado 29 de Junho de 2026
playwright-generate-test
Tempo atualizado 29 de Junho de 2026
OR