Files
claude-plugins/marketing/skills/youtube/SKILL.md
T

279 lines
8.4 KiB
Markdown

---
name: youtube
description: Gestao e optimizacao de canais YouTube. Estrategia de conteudo, SEO, thumbnails e analytics.
---
# /youtube - YouTube Complete Toolkit
Comando para extrair transcricoes, metadados e estrategia de crescimento de canais YouTube. Best practices 2026.
---
## Contexto NotebookLM
ANTES de executar, consultar notebooks para contexto especializado:
| Notebook | ID | Consultar quando |
|----------|-----|-----------------|
| Producao de Video e YouTube | `058a896e` | Sempre |
| YouTube Monetizacao e Compliance | `60a209a7` | Para questoes de monetizacao |
```
mcp__notebooklm__notebook_query({
notebook_id: "058a896e-6c9a-4e51-ae7d-9adb2738bc5f",
query: "<adaptar ao contexto>"
})
mcp__notebooklm__notebook_query({
notebook_id: "60a209a7-e205-4d57-a6f3-fef3de61e87a",
query: "<adaptar ao contexto>"
})
```
---
## Arquitectura v3.0.0
| Funcionalidade | Metodo | Estado | Notas |
|----------------|--------|--------|-------|
| **Pesquisa** | MCP youtube-research | OK | Filtros avancados, regiao, legendas |
| **Estatisticas** | MCP youtube-research | OK | Videos, canais, comparacoes |
| **Comentarios** | MCP youtube-research | OK | Com replies e likes |
| **Trending** | MCP youtube-research | OK | Por regiao e categoria |
| **Transcricoes** | Script local | OK | `youtube_extractor.py` (MCP nao funciona) |
| **Upload** | MCP youtube-uploader | Requer Auth | OAuth necessario |
| **Estrategia Crescimento** | Skill internal | OK | Analise algoritmo, optimizacoes |
---
## MCP youtube-research (8/12 funcionais)
### Ferramentas Funcionais
| Ferramenta | Funcao | Parametros |
|------------|--------|------------|
| `search-videos` | Pesquisa avancada | query*, maxResults, regionCode, order, videoDuration |
| `get-video-stats` | Estatisticas video | videoId* |
| `get-video-comments` | Comentarios + replies | videoId*, maxResults, order, includeReplies |
| `get-channel-stats` | Estatisticas canal | channelId* |
| `analyze-channel-videos` | Analise performance | channelId*, maxResults, sortBy |
| `get-trending-videos` | Trending por regiao | regionCode, maxResults, categoryId |
| `get-video-categories` | Categorias disponiveis | regionCode |
| `compare-videos` | Comparar multiplos | videoIds[]* (2-10 videos) |
### Ferramentas com Problemas (nao usar)
| Ferramenta | Problema |
|------------|----------|
| `get-video-transcript` | Nao devolve output |
| `enhanced-transcript` | Transcricao vazia |
| `get-key-moments` | Depende de transcricao |
| `get-segmented-transcript` | Depende de transcricao |
> **Aviso:** As ferramentas de transcricao do MCP youtube-research nao funcionam. Usar sempre o script local.
---
## Transcricoes (Script Local)
```
/media/ealmeida/Dados/Dev/ClaudeDev/Claude-Scripts/youtube-transcript/youtube_extractor.py
```
### Uso
```bash
cd /media/ealmeida/Dados/Dev/ClaudeDev/Claude-Scripts/youtube-transcript/
source venv/bin/activate
python youtube_extractor.py "https://youtube.com/watch?v=xxx"
```
Ou via skill: `/youtube https://youtube.com/watch?v=xxx`
---
## Casos de Uso
### 1. Analise Concorrencia
```javascript
// Pesquisar top videos nicho
mcp__youtube-research__search-videos({
query: "marketing digital portugal",
maxResults: 50,
order: "viewCount",
regionCode: "PT",
videoDuration: "medium"
})
// Analisar canal concorrente
mcp__youtube-research__analyze-channel-videos({
channelId: "UCxxx...",
maxResults: 50,
sortBy: "viewCount"
})
```
### 2. Keyword Research
```javascript
mcp__youtube-research__search-videos({
query: "ganhar dinheiro online",
maxResults: 100,
order: "relevance"
})
// Analisar: titulos mais usados, CTR estimado, competicao
```
### 3. Trending Topics Portugal
```javascript
mcp__youtube-research__get-trending-videos({
regionCode: "PT",
maxResults: 50,
categoryId: "22"
})
```
---
## Metricas Chave (YouTube Studio)
| Metrica | Benchmark | Accao se < Benchmark |
|---------|-----------|----------------------|
| **AVD** (Average View Duration) | > 50% | Melhorar hook, cortar partes fracas |
| **CTR** (Click-Through Rate) | > 8% | Testar thumbnail/titulo |
| **Impressions** | Subir mes a mes | SEO, consistencia uploads |
| **Subscribers Rate** | > 1% views | CTAs mais claros |
| **Likes/Views** | > 5% | Pedir likes com razao |
| **Comments/Views** | > 0.5% | Perguntas no video |
---
## SEO YouTube Rapido
### Titulo (Peso: 40%)
```
[Keyword Principal] + [Beneficio/Curiosidade] + [Trigger]
BOM: "Como Ganhar Dinheiro no YouTube 2026 (5000EUR/Mes)"
BOM: "10 Erros FATAIS em Marketing Digital (Evita #7)"
MAU: "Vlog #247" (sem keyword)
MAU: "INCRIVEL!!! TENS QUE VER ISTO!!!" (clickbait spam)
```
**Regras:** < 60 caracteres, keyword primeiros 5 palavras, numeros especificos.
### Descricao (Peso: 30%)
Estrutura: Resumo + keyword (1a linha) -> Timestamps -> Descricao expandida (min 200 palavras) -> CTAs -> Links -> Hashtags (3-5) -> Contacto
### Tags (Peso: 10%)
10-15 tags total: 1-2 exact keyword + 3-5 variacoes + 3-5 long-tail + 2-3 genericas nicho.
---
## Upload de Videos (MCP youtube-uploader)
### Configuracao Inicial (uma vez)
1. `mcp__youtube-uploader__authenticate` -> URL OAuth2
2. Abrir URL no browser -> Login Google -> Autorizar
3. Copiar codigo do redirect -> `mcp__youtube-uploader__accesstoken`
### Upload Completo
```javascript
mcp__youtube-uploader__upload_video({
file_path: "/caminho/completo/video.mp4",
channel_id: "UCxxx...",
title: "Titulo Optimizado SEO (< 100 chars)",
description: "Descricao completa com timestamps, links, keywords (min 200 palavras)",
tags: "tag1, tag2, tag3",
status: "public",
category_id: "22",
publish_at: "2026-02-05T18:00:00Z"
})
```
### Categorias Principais
| ID | Nome | Uso |
|----|------|-----|
| 22 | People & Blogs | Vlogs, lifestyle |
| 24 | Entertainment | Entretenimento geral |
| 27 | Education | Tutoriais, cursos |
| 28 | Science & Technology | Tech, ciencia |
---
## Referencias Detalhadas
Para conteudo detalhado, consultar:
- [references/strategy-guide.md](references/strategy-guide.md) - Estrategia crescimento (3 fases: 0-1K, 1K-10K, 10K-100K+), algoritmo YouTube 2026, optimizacao titulos/thumbnails, SEO YouTube completo, hook framework, metricas detalhadas, upload com MCP
---
## Anti-Patterns
- Nao usar para tarefas fora do dominio YouTube
- Nao usar MCPs de transcricao (usar script local)
- Nao prometer uploads sem OAuth configurado
---
**Script transcricoes**: `/media/ealmeida/Dados/Dev/ClaudeDev/Claude-Scripts/youtube-transcript/youtube_extractor.py`
**MCPs**: youtube-research (8/12 OK), youtube-uploader (requer auth)
---
## Media Bank (D7-MB-001)
**Quando consultar:** antes de criar thumbnail base (imagem de fundo) ou de seleccionar cutaways/B-roll para vídeos YouTube. Reutilizar matéria-prima local poupa tempo e mantém coerência visual.
**Workflow tentativa-primeiro:**
1. Pesquisar via MCP `media-bank`:
```
mcp__media-bank__search_media(
query="<tema do vídeo em EN>",
type="image", # ou "video" para cutaways
tema="<um dos 9 temas>",
orientation="landscape",
min_quality=7,
min_width=1280, # mínimo para thumbnail YT (1280x720)
exclude_used_in_last_days=30,
limit=5
)
```
2. Avaliar candidatos por `description_en` + `quality_score`.
3. Se ≥1 adequado → usar `path_local` como base do thumbnail (composição em Canva/Photoshop/design-engine) ou como cutaway no Remotion.
4. Se nenhum → fallback para geração IA.
5. Marcar uso: `mcp__media-bank__mark_used(asset_id, {type:"youtube-thumb", ref:"<video_id>", date:"<YYYY-MM-DD>"})`.
**Fallback REST** (se MCP indisponível):
```bash
SK=$(grep SERVICE_KEY /media/ealmeida/Dados/Hub/05-Projectos/Banco-Imagens-Videos/scripts/.env | cut -d= -f2)
curl -s "https://mem.descomplicar.pt/rest/v1/media_bank_assets?type=eq.image&orientation=eq.landscape&width=gte.1280&quality_score=gte.7&deleted_at=is.null&order=quality_score.desc&limit=5" \
-H "apikey: $SK" -H "Authorization: Bearer $SK"
```
**Regra inviolável:** matéria-prima local. Usar como input para composição do thumbnail — NUNCA publicar o ficheiro raw como thumbnail final sem edição (título, CTA, branding).
Ver `Hub/06-Operacoes/Procedimentos/D7-Tecnologia/MCP/PROC-Media-Bank.md` (D7-MB-001) para detalhes.
---
## Healing Log
Registo de erros conhecidos e como evitá-los. Lido automaticamente antes de executar.
```jsonl
{"date":"","issue":"","fix":"","source":"user|auto"}
```
*Adicionar nova linha após cada erro corrigido.*