google-agents-cli-scaffold
Project scaffolding, deployment configuration, and CI/CD setup for Google ADK agents.
Skill especializada para USUÁRIOS FINAIS (clientes) que desejam criar cursos na plataforma Plataforma B2B de treinamento técnico corporativo a partir de vídeos do YouTube. Esta skill utiliza um FLUXO DE DIAGNÓSTICO INTERATIVO para adaptar a estrutura às características do conteúdo. IMPORTANTE: A...
Full skill instructions
Guia Flexível para Usuários Finais
Versão: 2.0.0 Última Atualização: 2025-11-24 Público-Alvo: Clientes/Criadores de Conteúdo Abordagem: Diagnóstico Interativo + Estrutura Adaptativa
┌─────────────────────────────────────────────────────────────────────┐
│ ESTRUTURA = f(CONTEÚDO) │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ ❌ ERRADO: "Todo curso tem 4 seções e 16 módulos" │
│ │
│ ✅ CORRETO: "A estrutura emerge do diagnóstico do conteúdo" │
│ │
│ • Vídeo de 30min → Pode ser 1 módulo único │
│ • Playlist de 50 vídeos → Pode ser 5 seções com 10 módulos cada │
│ • Curso de 100h → Pode precisar de hierarquia adicional │
│ │
└─────────────────────────────────────────────────────────────────────┘
Antes de qualquer ação, Claude deve coletar:
┌─────────────────────────────────────────────────────────────────────┐
│ DIAGNÓSTICO INICIAL │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ 1. TIPO DE INPUT │
│ □ Vídeo único (URL) │
│ □ Playlist YouTube (URL) │
│ □ Múltiplos vídeos avulsos (lista de URLs) │
│ □ Série/curso existente (descrição) │
│ │
│ 2. CARACTERÍSTICAS DO CONTEÚDO │
│ • Duração total estimada: ___ │
│ • Quantidade de vídeos: ___ │
│ • Tema/assunto principal: ___ │
│ • Público-alvo: ___ │
│ • Idioma: ___ │
│ │
│ 3. OBJETIVO DO CURSO │
│ □ Introdução/overview rápido │
│ □ Curso completo estruturado │
│ □ Material de referência/consulta │
│ □ Treinamento corporativo │
│ │
│ 4. RECURSOS DESEJADOS │
│ □ Navegação por seções │
│ □ Checkboxes de progresso │
│ □ Flashcards │
│ □ Exercícios práticos │
│ □ Caderno de notas │
│ │
└─────────────────────────────────────────────────────────────────────┘
## Diagnóstico: Criação de Curso
Antes de começarmos, preciso entender melhor seu conteúdo:
1. **Qual é o input?**
- URL de vídeo único?
- URL de playlist?
- Lista de vídeos separados?
2. **Qual a duração aproximada do conteúdo total?**
- Menos de 1 hora
- 1-5 horas
- 5-20 horas
- Mais de 20 horas
3. **Como você imagina a estrutura do curso?**
- Um módulo único (conteúdo curto)
- Poucos módulos (2-5)
- Estrutura completa com seções
- Ainda não sei, preciso de sugestão
4. **Quais recursos são importantes?**
- Progresso com checkboxes
- Flashcards para revisão
- Apenas navegação simples
| Tipo de Input | Duração Típica | Estrutura Sugerida | Complexidade |
|---|---|---|---|
| Vídeo curto único | < 1h | 1 módulo, seções opcionais | Baixa |
| Vídeo longo único | 1-5h | 3-8 módulos, 1-2 seções | Média |
| Vídeo muito longo | 5-20h | Múltiplas seções e módulos | Alta |
| Playlist pequena | 5-10 vídeos | 1 seção por tema | Média |
| Playlist grande | 10-50 vídeos | Múltiplas seções agrupadas | Alta |
| Playlist muito grande | 50+ vídeos | Hierarquia multinível | Muito Alta |
| Vídeos avulsos | Variável | Análise caso a caso | Variável |
| Webinar/Live | 1-3h | 1 módulo com timestamps | Baixa |
AUTOMÁTICO (Claude decide):
├── Padrão de código (React/Tailwind)
├── Estrutura de arquivos
├── Nomenclatura de componentes
└── Integração técnica
INTERATIVO (Usuário valida):
├── Número de seções
├── Agrupamento de módulos
├── Nomes/títulos
├── Recursos opcionais (flashcards, etc.)
└── Nível de detalhamento
┌─────────────────────────────────────────────────────────────────────┐
│ CICLO DE ALINHAMENTO │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ USUÁRIO CLAUDE │
│ │ │ │
│ │──── "Quero criar curso" ──────▶│ │
│ │ │ │
│ │◀─── Perguntas diagnóstico ────│ │
│ │ │ │
│ │──── Respostas ────────────────▶│ │
│ │ │ │
│ │◀─── Proposta de estrutura ────│ │
│ │ "Baseado no seu input, │ │
│ │ sugiro X seções com │ │
│ │ Y módulos. Concorda?" │ │
│ │ │ │
│ │──── Ajustes/Aprovação ────────▶│ │
│ │ │ │
│ │◀─── Execução ─────────────────│ │
│ │ │ │
└─────────────────────────────────────────────────────────────────────┘
## Proposta de Estrutura
Baseado na análise do seu conteúdo, sugiro:
### Visão Geral
- **Duração total:** [X horas]
- **Formato:** [descrição]
### Estrutura Proposta
**Opção A: [Nome descritivo]**
- [N] seções
- [M] módulos no total
- Recursos: [lista]
**Opção B: [Nome descritivo]**
- [N'] seções
- [M'] módulos no total
- Recursos: [lista]
### Perguntas de Refinamento
1. Qual opção prefere?
2. Algum ajuste nos agrupamentos?
3. Quer adicionar/remover recursos?
Aguardo sua validação antes de prosseguir.
Adaptável conforme input:
# Vídeo único
python youtube_transcript.py "URL_VIDEO"
# Playlist (extrair lista primeiro)
# Claude analisa playlist e propõe agrupamentos
# Múltiplos vídeos
python youtube_transcript.py --batch lista_videos.txt
Claude analisa e propõe (não executa ainda):
Analisei as transcrições e identifiquei:
- [X] tópicos principais
- [Y] subtópicos
- Duração: [Z] horas
Proposta de organização:
[estrutura sugerida]
Posso prosseguir com essa estrutura?
Estrutura adaptativa:
// Exemplo: curso CURTO (1 vídeo, 2h)
export const fases[Nome] = [
{ id: 1, nome: "Conteúdo Completo", ... }
];
export const modulos[Nome] = [
{ id: '1.1', nome: 'Introdução', ... },
{ id: '1.2', nome: 'Conceitos', ... },
{ id: '1.3', nome: 'Prática', ... }
];
// Exemplo: curso EXTENSO (playlist 50 vídeos)
export const fases[Nome] = [
{ id: 1, nome: "Fundamentos", ... },
{ id: 2, nome: "Intermediário", ... },
{ id: 3, nome: "Avançado", ... },
{ id: 4, nome: "Especialização", ... },
{ id: 5, nome: "Projetos", ... }
];
export const modulos[Nome] = [
// 50 módulos organizados nas 5 seções
];
Nível de detalhamento conforme necessidade:
| Cenário | Detalhamento | Componentes |
|---|---|---|
| Curso curto | Mínimo | LearningSystem apenas |
| Curso médio | Padrão | LearningSystem + NotesView básico |
| Curso extenso | Completo | LearningSystem + NotesView detalhado + Flashcards |
Sempre necessário:
studyAreas.jsSistemaEducacionalCompleto.jsxOpcional conforme escopo:
| Elemento | JSX |
|---|---|
| Título | <h2 className="text-2xl font-bold"> |
| Parágrafo | <p className="text-gray-700"> |
| Lista | <ul className="list-disc"> |
| Elemento | JSX |
|---|---|
| Código | <CodeBlock code={...}> |
| Aviso | <div className="bg-yellow-50 border"> |
| Destaque | <div className="bg-[cor]-100 p-4 rounded"> |
| Elemento | JSX |
|---|---|
| Timeline | Grid com datas/eventos |
| Comparação | Grid 2 colunas |
| Diagrama | Componente visual customizado |
| Interativo | Estado React + handlers |
INPUT: "Tenho um vídeo de 45 min sobre Git básico"
DIAGNÓSTICO:
- Tipo: Vídeo único curto
- Duração: < 1h
- Objetivo: Introdução
PROPOSTA:
- 1 seção única
- 3-4 módulos (Intro, Comandos, Branches, Prática)
- Sem flashcards (opcional)
- Progresso simples
RESULTADO:
├── gitLearningData.js (1 fase, 4 módulos)
└── GitLearningSystem.jsx (componente simples)
INPUT: "Playlist de Docker com 20 vídeos"
DIAGNÓSTICO:
- Tipo: Playlist média
- Duração: ~15h
- Objetivo: Curso completo
PROPOSTA:
- 4 seções (Básico, Imagens, Compose, Produção)
- 20 módulos (1 por vídeo)
- Flashcards por seção
- Progresso detalhado
RESULTADO:
├── dockerLearningData.js (4 fases, 20 módulos)
├── DockerLearningSystem.jsx
├── DockerNotesView.jsx (4 arquivos, 1 por seção)
└── Flashcards integrados
INPUT: "Curso completo de Python, 150 vídeos"
DIAGNÓSTICO:
- Tipo: Playlist muito grande
- Duração: 80h+
- Objetivo: Formação completa
PROPOSTA INTERATIVA:
"Este é um curso extenso. Sugiro dividir em TRILHAS:
Trilha 1: Python Básico (30 vídeos)
Trilha 2: Python Intermediário (40 vídeos)
Trilha 3: Python Avançado (40 vídeos)
Trilha 4: Projetos (40 vídeos)
Cada trilha seria um 'curso' separado no sistema.
Concorda com essa abordagem?"
RESULTADO (após aprovação):
├── pythonBasicoLearningData.js
├── pythonIntermedLearningData.js
├── pythonAvancadoLearningData.js
├── pythonProjetosLearningData.js
└── Componentes correspondentes
Solução: Claude analisa e propõe baseado em:
Solução: Claude sugere agrupamentos e pede validação:
"Identifiquei 3 temas diferentes na playlist:
- Vídeos 1-8: Fundamentos
- Vídeos 9-15: Aplicações
- Vídeos 16-20: Avançado
Posso agrupar assim ou prefere outra organização?"
Solução: Claude sugere estrutura mínima:
"Com apenas 30 minutos de conteúdo, sugiro:
- 1 módulo único com 3-4 seções internas
- Sem necessidade de NotesView separado
- Progresso simples (completo/não completo)
Prefere essa abordagem simplificada?"
Solução: Claude oferece alternativas:
"O vídeo não tem transcrição automática. Opções:
1. Transcrever manualmente (você fornece texto)
2. Usar serviço externo de transcrição
3. Criar estrutura baseada em títulos/descrições
4. Assistir e anotar tópicos principais
Qual prefere?"
| Arquivo | Descrição |
|---|---|
src/data/bashLearningData.js | Exemplo de curso médio (4 seções, 16 módulos) |
src/components/BashNotesView.jsx | Exemplo de NotesView detalhado |
docs/TEMPLATE-CURSO-PADRAO.md | Template técnico |
docs/GUIA-TRANSCRICAO-PARA-CURSO.md | Guia de transformação |
1. USUÁRIO fornece input (URL, playlist, descrição)
↓
2. CLAUDE faz perguntas de diagnóstico
↓
3. USUÁRIO responde características
↓
4. CLAUDE propõe estrutura adaptada
↓
5. USUÁRIO valida/ajusta proposta
↓
6. CLAUDE executa criação
↓
7. USUÁRIO testa e aprova
Princípio Central: A estrutura serve o conteúdo, não o contrário.
Você está em: .claude/skills/cliente:criar-a-partir-video/SKILL.md
Versão: 2.0.0 (Diagnóstico Interativo)
Criado em: 2025-11-24
Mantido por: Plataforma B2B de treinamento técnico corporativo Team
Abordagem: Flexível, Adaptativa, Colaborativa
Project scaffolding, deployment configuration, and CI/CD setup for Google ADK agents.
Set up tracing, logging, and monitoring for deployed ADK agents across Cloud Trace, BigQuery, and third-party platforms.
Enterprise Azure infrastructure architect generating Bicep or Terraform from workload descriptions.
Plan and configure production-ready Azure Kubernetes Service clusters with Day-0 and Day-1 best practices.
Raw mechanical interfaces fusing Swiss typographic print with military terminal aesthetics. Rigid grids, extreme type scale contrast, utilitarian color, analog degradation effects. For data-heavy dashboards, portfolios, or editorial sites that need to feel like declassified blueprints.
Web search, scraping, extraction, crawling, and monitoring via ScrapeGraph AI CLI.
Skill for working with Firebase Hosting (Classic). Use this when you want to deploy static web apps, Single Page Apps (SPAs), or simple microservices. Do NOT use for Firebase App Hosting.
Deploy and manage web apps with Firebase App Hosting. Use this skill when deploying Next.js/Angular apps with backends.
Deploy applications and websites to Vercel. Use when the user requests deployment actions like "deploy my app", "deploy and give me the link", "push this live", or "create a preview deployment".
Build SEO-optimized pages at scale using templates, data, and proven playbook patterns.
Design and build isolated, reusable Convex backend components with clear boundaries and app-facing wrappers.
Deploy and manage projects on Vercel using token-based authentication. Use when working with Vercel CLI using access tokens rather than interactive login — e.g. "deploy to vercel", "set up vercel", "add environment variables to vercel".
Opus.ai: Revolutionize Your Web Experience
Build a no-code AI app in minutes.
An IDE for code migration from legacy to modern frameworks through coding agents.
Automate CGI animation in live-action scenes
Branded artistic QR-code concepts
Launch a website in seconds with AI.
Streamline Your Coding Experience with AI Code Helper
Convert any screenshot or design to clean code.