Aula no NotebookLM → MP4 → Hotmart
Produto canônico: Resumo em Vídeo · Explicativo · Português (Brasil) · Clássico. Não inventar conteúdo: a fonte é a aula já escrita. Clique é só o meio.
Pedido do tipo gera / download / hotmart / até o final / sem allow: não parar na primeira aula, não pedir Allow, não pedir OK para Gerar.
Sem Allow (obrigatório)
Nunca browser-harness mac-approve. Nunca pedir para clicar Allow.
Nunca anexar depurador no Chrome do dia a dia (isso gera o sheet Allow).
O lote abre o próprio Chrome no perfil ~/.chrome-b555-nlm (launch_persistent_context). Sem Allow.
python3 .cursor/skills/aula-notebooklm/scripts/login_google.py # se a janela pedir conta
python3 .cursor/skills/aula-notebooklm/scripts/lote_ate_o_fim.py
# ou em background:
zsh .cursor/skills/aula-notebooklm/scripts/rodar_lote.sh
O lote faz login uma vez no começo, depois: baixa o que estiver pronto, pede no máximo 3 vídeos novos por volta, espera 90s e repete.
Login Google, se pedir, é nessa janela — não é Allow. Sem senha pelo agente.
Não usar a porta 9222 deste Mac (não é DevTools). chrome_sem_allow.sh (porta 9333) é só fallback se o Playwright não conseguir abrir o Chrome.
Skills públicos vendored (login/query/OAuth/MCP): ver skills-google-notebooklm e .cursor/vendor/README.md.
Até o final
python3 .cursor/skills/aula-notebooklm/scripts/preparar_fonte.py <ids|--todas via união>
python3 .cursor/skills/aula-notebooklm/scripts/validar_fonte.py --todas
python3 .cursor/skills/aula-notebooklm/scripts/lote_ate_o_fim.py
# ou um recorte:
python3 .cursor/skills/aula-notebooklm/scripts/lote_ate_o_fim.py --so conceito-04 01
O lote retoma planejamento/notebooklm/LOTE.json + manifest.json.
Ordem Hotmart: conceito → historia → 01–08 → leiga → keras → pytorch → pdf-dl.
Por aula: fonte pronta → notebook → Gerar vídeo → Baixar aulas/<id>-notebooklm.mp4 → scripts/hotmart_reupload_aulas_mp4.py <id> se existir /tmp/hm_tok.txt.
Vídeo demora (às vezes >30 min). O script dá voltas e baixa o que ficar pronto. Não ficar em wait cego de uma aula só: peça a próxima geração e volte.
Skills / regras
.cursor/rules/estrutura-aula-texto-b555.mdc+docs/ESTRUTURA-AULA-TEXTO.md.cursor/skills/aula-com-introducao/SKILL.md.cursor/skills/gerar-aula-b555/SKILL.md- Prompts: prompt-estudio.md
- Índice dos skills públicos:
.cursor/skills/skills-google-notebooklm/SKILL.md
Fonte
python3 .cursor/skills/aula-notebooklm/scripts/preparar_fonte.py <id>
python3 .cursor/skills/aula-notebooklm/scripts/validar_fonte.py <id>
| Arquivo | Uso |
|---|---|
planejamento/notebooklm/<id>/fonte.md |
Texto copiado |
prompt-video.txt / prompt-audio.txt |
Estúdio |
manifest.json |
URL + estado |
Validação falhou → complete analogia / abertura / frase-guia / “o que ainda não é”. Sem UNIFOR/Turma/prefeitura.
UI (se operar na mão)
https://notebook.google.com/ · textos: Criar novo · Adicionar fonte · Texto copiado · Inserir · Estúdio · Resumo em Vídeo · Gerar · Baixar.
Vídeo: Explicativo · Português (Brasil) · Clássico · colar prompt-video.txt.
Login accounts.google.com → o usuário entra nessa janela (perfil ~/.chrome-b555-nlm). Sem senha pelo agente. O lote espera sem limite.
Download e Hotmart
aulas/<id>-notebooklm.mp4 # o reupload procura aulas/<id>-*.mp4
aulas/notebooklm/<id>/video.mp4
python3 .cursor/skills/aula-notebooklm/scripts/gerar_video_e_hotmart.py <id>
Token de produtor em /tmp/hm_tok.txt (eyJ…). Sem token: continuar gerando/baixando; Hotmart na próxima volta. Não inventar token. Não mexer em billing. Não compartilhar notebook em público.
Didática da fonte
Abertura em 4 batidas · analogia antes do jargão · mapa · o que ainda não é · frase-guia no fecho.
Perigoso
| Ação | Conduta |
|---|---|
| Gerar (usuário já disse gera/até o final) | seguir |
| Gerar (não disse) | pedir OK |
| Compartilhar público / apagar / billing | nunca sozinho |
Erros
| Sintoma | Ação |
|---|---|
| Allow / mac-approve | abortar; o lote abre Chrome próprio, sem anexar |
| Perfil em uso / CDP recusou | o lote mata só o Chrome de ~/.chrome-b555-nlm e reabre |
| Login Google | login_google.py ou esperar na janela B555 |
| Vídeo gerando | próxima aula; voltar depois |
Sem hm_tok.txt |
lote segue; avisar no relatório |
Exemplo
“gerar os vídeos, download e Hotmart, sem allow, até o final”
lote_ate_o_fim.py(abre Chrome próprio; retoma o que já baixou)- Login Google só se a janela B555 pedir — sem Allow
- Relatar: ids baixados, gerando, Hotmart ok/falha, URLs