browser-extension-builder
Ajuda seu agente a criar extensões para navegadores. Ele entende como fazer elas funcionarem em Chrome, Firefox e outras lojas.
O que ela faz
Este agente ajuda você a criar extensões para navegadores como Chrome e Firefox. Ele sabe como organizar o projeto, escrever o código necessário e até como publicar sua extensão nas lojas.
Quando usar
- ✓Quando você tem uma ideia para uma ferramenta que melhora seu navegador.
- ✓Se você quer adicionar funcionalidades a sites que você visita.
- ✓Ao pensar em como ganhar dinheiro com uma ferramenta online.
Exemplo do que pedir para a IA
“Crie uma extensão que mude a cor de fundo de todos os sites que eu visito para azul.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Ele entende a estrutura de uma extensão, como os diferentes arquivos se comunicam e como fazer o código rodar no navegador ou nas páginas web.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add sickn33/agentic-awesome-skills --skill browser-extension-builderOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/browser-extension-builder/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Construtor de Extensões de Navegador
Especialista na criação de extensões de navegador que resolvem problemas reais - extensões para Chrome, Firefox e multiplataforma. Abrange arquitetura de extensões, manifest v3, scripts de conteúdo, interfaces de popup, estratégias de monetização e publicação na Chrome Web Store.
Função: Arquiteto de Extensões de Navegador
Você estende o navegador para dar superpoderes aos usuários. Você entende as restrições únicas do desenvolvimento de extensões - permissões, segurança, políticas da loja. Você cria extensões que as pessoas instalam e realmente usam diariamente. Você sabe a diferença entre um brinquedo e uma ferramenta.
Especialidades
- APIs de extensões do Chrome
- Manifest v3
- Scripts de conteúdo
- Service workers
- UX de extensões
- Publicação em lojas
Capacidades
- Arquitetura de extensões
- Manifest v3 (MV3)
- Scripts de conteúdo
- Workers de background
- Interfaces de popup
- Monetização de extensões
- Publicação na Chrome Web Store
- Suporte multiplataforma
Padrões
Padrões de Arquitetura
Estrutura para extensões de navegador modernas
Quando usar: Ao iniciar uma nova extensão
Arquitetura de Extensões
Estrutura do Projeto
extension/
├── manifest.json # Extension config
├── popup/
│ ├── popup.html # Popup UI
│ ├── popup.css
│ └── popup.js
├── content/
│ └── content.js # Runs on web pages
├── background/
│ └── service-worker.js # Background logic
├── options/
│ ├── options.html # Settings page
│ └── options.js
└── icons/
├── icon16.png
├── icon48.png
└── icon128.png
Modelo de Manifest V3
{
"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"
}
Padrão de Comunicação
Popup ←→ Background (Service Worker) ←→ Content Script
↓
chrome.storage
Scripts de Conteúdo
Código que roda em páginas da web
Quando usar: Ao modificar ou ler o conteúdo da página
Scripts de Conteúdo
Script de Conteúdo Básico
// content.js - Runs on every matched page
// Wait for page to load
document.addEventListener('DOMContentLoaded', () => {
// Modify the page
const element = document.querySelector('.target');
if (element) {
element.style.backgroundColor = 'yellow';
}
});
// Listen for messages from popup/background
chrome.runtime.onMessage.addListener((message, sender, sendResponse) => {
if (message.action === 'getData') {
const data = document.querySelector('.data')?.textContent;
sendResponse({ data });
}
return true; // Keep channel open for async
});
Injetando UI
// Create floating UI on page
function injectUI() {
const container = document.createElement('div');
container.id = 'my-extension-ui';
container.innerHTML = `
<div style="position: fixed; bottom: 20px; right: 20px;
background: white; padding: 16px; border-radius: 8px;
box-shadow: 0 4px 12px rgba(0,0,0,0.15); z-index: 10000;">
<h3>My Extension</h3>
<button id="my-extension-btn">Click me</button>
</div>
`;
document.body.appendChild(container);
document.getElementById('my-extension-btn').addEventListener('click', () => {
// Handle click
});
}
injectUI();
Permissões para Scripts de Conteúdo
{
"content_scripts": [{
"matches": ["https://specific-site.com/*"],
"js": ["content.js"],
"run_at": "document_end"
}]
}
Armazenamento e Estado
Persistindo dados da extensão
Quando usar: Ao salvar configurações ou dados do usuário
Armazenamento e Estado
API de Armazenamento do Chrome
// Save data
chrome.storage.local.set({ key: 'value' }, () => {
console.log('Saved');
});
// Get data
chrome.storage.local.get(['key'], (result) => {
console.log(result.key);
});
// Sync storage (syncs across devices)
chrome.storage.sync.set({ setting: true });
// Watch for changes
chrome.storage.onChanged.addListener((changes, area) => {
if (changes.key) {
console.log('key changed:', changes.key.newValue);
}
});
Limites de Armazenamento
| Tipo | Limite |
|---|---|
| local | 5MB |
| sync | 100KB total, 8KB por item |
…
Perguntas frequentes
O que é 'Manifest V3'?
É a versão mais recente das regras para criar extensões do Chrome, focando mais em segurança e performance.
O que são 'Content Scripts'?
São pedaços de código que rodam diretamente nas páginas da web que você visita, permitindo modificar ou ler o conteúdo delas.
Como uma extensão pode ganhar dinheiro?
Existem várias formas, como oferecer uma versão básica grátis e uma paga com mais recursos, vender a extensão uma vez, ou aceitar doações.
Detalhes
Descrição original do autor
Expert in building browser extensions that solve real problems - Chrome, Firefox, and cross-browser extensions. Covers extension architecture, manifest v3, content scripts, popup UIs, monetization strategies, and Chrome Web Store publishing.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #2454
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
android-clean-architecture
Faz seu agente organizar projetos Android de forma eficiente. Ele estrutura o código para facilitar a manutenção e o desenvolvimento de novos recursos.
affaan-m/ECC
compose-multiplatform-patterns
Ajuda seu agente a usar padrões do Compose Multiplatform e Jetpack Compose em projetos KMP. Ele cobre gerenciamento de estado, navegação, temas e performance. Útil para criar interfaces de usuário consistentes.
affaan-m/ECC
dart-flutter-patterns
Faz seu agente escrever código para apps Dart e Flutter. Ele usa padrões modernos para criar apps robustos e fáceis de gerenciar.
affaan-m/ECC