Você comentou [CONFIRMAR palavra-gatilho do vídeo]

Descubra quais ganchos fazem os Reels de um criador performarem

O Creator Lab coleta os Reels de um perfil, transcreve as falas e classifica tema, gancho e estrutura de cada roteiro. Você cola um prompt no Claude Code e ele instala tudo em português, usando OpenAI e OpenRouter. O primeiro teste com 20 Reels custa cerca de US$ 0,13.

≈ US$ 0,13custo real de um piloto com 20 Reels
≈ US$ 0,009por Reel de 1 minuto, somando as três APIs
3 chavesApify, OpenAI e OpenRouter

Antes de começar

As contas que você precisa

ContaPara quêSaldo
Claude CodeInstala e adapta o projeto por vocêSeu plano do Claude
Apifyconsole.apify.comColeta os Reels, capas e métricas públicasPlano gratuito de US$ 5 por mês
OpenAIplatform.openai.com/api-keysTranscreve as falasSaldo pré-pago
OpenRouteropenrouter.ai/settings/keysRoda o Jev, que classifica os roteirosCréditos pré-pagos

Git, Node.js e FFmpeg o próprio prompt instala se faltar.

Passo a passo

Como usar

  1. Abra o Claude Code numa pasta vazia, no terminal ou no VS Code.
  2. Copie o prompt abaixo e cole como primeira mensagem.
  3. Aprove os comandos que ele pedir. Quando ele abrir o arquivo .env, cole suas chaves ali, nunca no chat.
  4. Abra http://127.0.0.1:5190, confira as Conexões e rode o primeiro teste com 20 Reels.

O prompt

Copie e cole no Claude Code

Quero instalar o Creator Lab neste computador, adaptado para português e para os provedores OpenAI + OpenRouter. O Creator Lab coleta os Reels de um perfil do Instagram, transcreve as falas e classifica tema, gancho e estrutura de cada roteiro, para eu ver quais padrões performam melhor.

Trabalhe passo a passo e me explique em português simples o que está fazendo. Sou criador de conteúdo, não programador. Não peça para eu colar chaves de API no chat: eu mesmo colo no arquivo .env quando você pedir.

## 1. Verificar o computador
- Confira se existem Git, Node.js 22.9 ou mais novo (ideal: 24 LTS), ffmpeg e ffprobe.
- Se faltar algo, instale pelo gerenciador do sistema e me diga o que instalou:
  - Windows: winget install --id Git.Git -e · winget install --id OpenJS.NodeJS.LTS -e · winget install --id Gyan.FFmpeg -e
  - macOS: brew install git node ffmpeg
  - Linux (Ubuntu/Debian): sudo apt install git nodejs npm ffmpeg (confira se o Node é 22.9 ou mais novo)
- Se o terminal não reconhecer o que foi instalado, me peça para fechar e abrir o terminal de novo.

## 2. Baixar o projeto
- Pergunte em qual pasta instalar (sugira Documentos) e rode: git clone https://github.com/artemnovitckii/creator-lab.git
- Entre na pasta e rode npm run check e npm test para confirmar que a versão original funciona antes de mexer.
- Crie um branch chamado adaptacao-pt.

## 3. Adaptar o código
O original usa Groq para transcrever, a API da TypeSafe para o Jev e está em inglês. Faça as mudanças abaixo. Os nomes de arquivo são do repositório original; se algo tiver mudado, adapte e me avise.

### 3.1 Transcrição com OpenAI no lugar do Groq (lib/providers.mjs, lib/pipeline.mjs, server.mjs)
- Remova o provedor groq e crie openai: endpoint https://api.openai.com/v1/audio/transcriptions, chave OPENAI_API_KEY, modelo padrão whisper-1 (configurável por OPENAI_TRANSCRIPTION_MODEL). Mantenha a Fireworks como alternativa. Provedor padrão: TRANSCRIPTION_PROVIDER=openai.
- A OpenAI não aceita URL de mídia: sempre baixe a mídia, extraia o áudio com FFmpeg (16 kHz, mono) e envie o arquivo. Para a OpenAI gere m4a/AAC (-c:a aac -b:a 48k, tipo audio/mp4), porque FLAC não está na lista oficial de formatos. Para a Fireworks continue com FLAC. Limite de 25 MB.
- Só o whisper-1 devolve os tempos de cada trecho: para ele envie response_format=verbose_json e timestamp_granularities[]=segment. Para gpt-4o-transcribe ou gpt-4o-mini-transcribe envie response_format=json, sem granularidade.
- Custo estimado por minuto de áudio: whisper-1 e gpt-4o-transcribe US$ 0,006; gpt-4o-mini-transcribe US$ 0,003; outro modelo fica com custo desconhecido (null). Remova a cobrança mínima de 10 s, que era regra do Groq.
- Ritmo: OPENAI_REQUESTS_PER_MINUTE (padrão 50) no lugar de GROQ_REQUESTS_PER_MINUTE.
- Verificação da chave em Conexões: GET https://api.openai.com/v1/models.

### 3.2 Jev pelo OpenRouter no lugar da TypeSafe (lib/providers.mjs, lib/schema.mjs, server.mjs)
- O OpenRouter tem um endpoint compatível com a TypeSafe: POST https://openrouter.ai/api/v1/systemone, com o mesmo corpo (model, state, questions) e a mesma resposta (answers com choice, confidence e probabilities). Troque só a URL, o modelo para typesafe/jev-1.13 e a chave para OPENROUTER_API_KEY.
- Custo: use usage.cost quando vier na resposta; senão, input_tokens × 0,042 / 1.000.000.
- Verificação da chave: GET https://openrouter.ai/api/v1/key.
- Nas mensagens de erro, esconda também chaves que começam com sk- e fw_.

### 3.3 Corrigir a trava da Apify (lib/pipeline.mjs)
- Quando o início da coleta na Apify falhar com erro HTTP 4xx (por exemplo, 403 de limite mensal), a Apify recusou e nada foi iniciado: limpe o scrapeUncertain para eu poder tentar de novo. Falhas de conexão continuam travando, para não cobrar duas vezes.
- Ao carregar análises salvas, destrave as que não têm scrape e cujo erro começa com "Apify: HTTP 4".

### 3.4 Tudo em português do Brasil
- Traduza tudo que aparece para mim: public/index.html, public/app.js, public/record.html, public/record.js, as mensagens de erro e de atividade em lib/ e server.mjs, scripts/doctor.mjs, scripts/setup.mjs e os exemplos da demo em lib/demo.mjs. Use lang="pt-BR".
- Não traduza as chaves das categorias nem as instruções que vão para o Jev em lib/schema.mjs, para não mudar a classificação. Traduza só a exibição: crie public/labels.mjs com os nomes das categorias, os títulos das dimensões e as descrições em português, e use esse arquivo em app.js e record.js.
- Importante: adicione /labels.mjs à lista de arquivos que o server.mjs entrega. Sem isso a página abre, mas nenhum botão funciona.
- Formate números e datas em pt-BR (ex.: 32,7 mil; US$ 0,0042). No seletor de idioma falado, inclua Português e Espanhol.

### 3.5 Configuração, documentação e testes
- Atualize .env.example, npm run doctor, npm run setup, o README e docs/SETUP.md para OpenAI + OpenRouter.
- Ajuste os testes ao novo comportamento e rode npm run check e npm test até tudo passar. Os testes usam respostas simuladas, sem chamadas pagas.
- Faça um commit no branch adaptacao-pt.

## 4. Chaves de API
- Rode npm run setup para criar o .env e abra o arquivo no editor.
- Me diga onde criar cada chave e em qual linha colar:
  - APIFY_TOKEN: console.apify.com → Settings → API & Integrations. O plano gratuito dá US$ 5 por mês e bloqueia quando passa disso (erro 403 "Monthly usage hard limit exceeded"). Créditos de outra conta não valem: o token precisa ser da conta que tem saldo.
  - OPENAI_API_KEY: platform.openai.com/api-keys (a conta precisa de saldo).
  - OPENROUTER_API_KEY: openrouter.ai/settings/keys (precisa de créditos pré-pagos para usar o Jev).
- Nunca mostre as chaves no chat e nunca faça commit do .env.

## 5. Rodar e conferir
- Rode npm run doctor: tudo precisa aparecer OK.
- Rode npm start e abra http://127.0.0.1:5190. Em Conexões → Salvar e verificar, Apify, OpenAI e OpenRouter precisam aparecer como verificadas.
- Primeira análise: um perfil público, 20 Reels, limite de gasto da Apify em US$ 1. Só aumente depois de conferir algumas transcrições.
- Sempre que mudar código ou o .env, reinicie o servidor (Ctrl+C e npm start) e atualize a página com Ctrl+F5.

## 6. Quando terminar
Me diga em poucas linhas: onde ficou a pasta, como abrir de novo amanhã (entrar na pasta e rodar npm start) e quanto custou a primeira análise.

Medido em 1º de outubro de 2026

Quanto custa de verdade

EtapaPiloto · 20 ReelsLote · 411 ReelsPor Reel
ColetaApifyUS$ 0,043US$ 1,06≈ US$ 0,0026
TranscriçãoOpenAI whisper-1US$ 0,084 · 14 minUS$ 0,94 · 156 min, 157 Reels≈ US$ 0,006 por minuto de fala
ClassificaçãoJev via OpenRouterUS$ 0,003US$ 0,05 · 151 Reels≈ US$ 0,0004

Portanto, um piloto sai por centavos e a transcrição responde por cerca de dois terços do custo. Para 100 Reels de 1 minuto, conte com algo perto de US$ 0,90.

Os valores são estimativas do app. A cobrança oficial é a de cada serviço.

Se travar

Erros comuns

Erro 01

Erro 403 "Monthly usage hard limit exceeded" na Apify.

A conta passou do limite mensal. No plano gratuito ele é de US$ 5 e não sobe. Faça upgrade, use o token de uma conta com saldo ou espere o ciclo renovar. Créditos de outra conta não contam.

Erro 02

A página abre, mas nenhum botão funciona.

O servidor ainda roda o código antigo. No terminal dele aperte Ctrl+C, rode npm start e atualize a página com Ctrl+F5.

Erro 03

"Conecte … em Conexões primeiro" ou erro 402.

Falta uma chave no .env ou crédito no OpenRouter. Cole a chave ou adicione saldo, reinicie o servidor e clique em Iniciar / retomar.

Próximo passo

Rode hoje o teste de 20 Reels no seu próprio perfil e abra 3 roteiros para ver quais ganchos você mais usa.

O Creator Lab original é de Artem Novitckii, sob licença MIT (github.com/artemnovitckii/creator-lab). O prompt adapta essa versão no seu computador. O Jev é um modelo da TypeSafe, acessado pelo OpenRouter. Projeto independente, sem vínculo com Instagram, Apify, OpenAI, OpenRouter ou TypeSafe.