O documento que explica o desenho da operação: o que estava quebrado, por que estava, e o que se decidiu fazer. Vale menos como plano (a maior parte é de maio) e mais como memória das decisões — várias regras que hoje parecem arbitrárias nasceram aqui.
Contexto
Felipe rodou o pipeline refatorado (F1-F6 deployed) por 8 dias (10-18/05/2026) e identificou 4 problemas concretos:
- UX dos outputs: clippings no Obsidian estão "feios e ruim de ler" — frontmatter pesado no topo, sem diagramação agradável, sem preview de imagem da matéria. Não dá vontade de ler.
- Carrossel repetitivo: gera as mesmas imagens todos os dias, mesmo tema. Curador não está funcionando.
- Clipper limitado: pega sempre 4 notícias do mesmo lugar (Geledés, CartaCapital). Falta orquestrador. Falta noção de peso/importância (exemplo: áudio Flávio→Vorcaro do dia 14/05 — bomba eleitoral — entrou com mesmo peso de matéria comum).
- ChatGPT sem API: tema não avançado, quer retomar — usar Plus/Pro direto sem custo de API.
Evidências concretas coletadas (18/05)
| Sintoma | Evidência |
|---|---|
| Carrosseis 14, 16, 18/05 IDÊNTICOS | 3 PNGs slide 1: manchete literal "DOMÉSTICA NÃO É DA FAMÍLIA. É TRABALHADORA COM DIREITOS" — só mudou tipografia |
| Clipper repete matéria evergreen | geledes_o-racismo-e-seus-horrores-trabalhadora clipada 4× (13, 14, 15, 16/05) — mesmo título, sem dedup |
| Reflexão de Fontes virou doc morto | Último update no histórico: 12/05. Sem entradas de 13-18/05. Curador foi aposentado 08/05 e ninguém herdou esse passo |
| Relatório 18/05 confessa falha | Linha 52: _(informação indisponível — verificar com bot:clipper)_ — Organizador não lê output do Clipper |
Bug {{title}} literal | 2026-05-14_g1_flavio-bolsonaro-daniel-vorcaro.md linha 17: H1 com {{title}} em vez do título substituído |
| Posts_Estaticos e Reels VAZIOS | Só Carrosseis está sendo produzido. Beneverso virou monocultura de carrossel militância doméstica |
| 6 pendências de 08/05 não decididas há 10 dias | Relatório 18/05 lista as mesmas 6 pendências há 10 dias — sem mecanismo de feedback humano |
Por que isso acontece (root causes)
- Clipper v2 não tem dedup nem memória 7 dias → matéria evergreen do Geledés entra todo dia
- Carrossel News v2 não tem memória → sempre pega
potencial_gancho:alto+linha:militanciado dia, e doméstica sempre vence - Não existe agente coordenador → Editor de Pauta (F5 original) ficou pra "próxima sessão" e não foi feito. Sem ele, ninguém impede repetição de tema
- Reflexão de Fontes órfã → Curador Diário aposentado dia 08/05; nem Clipper nem Organizador herdaram a obrigação de atualizá-la
- Sem campo de peso editorial → frontmatter só tem
potencial_gancho: alto|medio|baixo. Não diferencia bomba (Flávio/Vorcaro) de alta-comum - Sem ciclo de feedback humano → bot não sabe se o output deu certo. Pendências acumulam
Decisão sobre ChatGPT sem API
Não existe solução robusta de rodar ChatGPT Plus/Pro em cron 24/7 com PC desligado. Cada opção quebra:
| Opção | Por que não funciona pra cron 24/7 |
|---|---|
| Browser automation (Playwright) na VPS com cookie ChatGPT | Session expira em 7-30 dias → reauth manual. OpenAI pode bloquear IP de VPS Hostinger (Cloudflare). Captcha imprevisível |
JWT direto via chatgpt.com/api/auth/session | Token expira em horas. Anti-bot OpenAI detecta e mata |
| MCP ChatGPT existentes (vários no GitHub) | Todos requerem PC ligado + sessão local. NÃO rodam em VPS confiável |
| Custom GPT com Action HTTP no vault | Funciona — mas só quando você abre o app oficial. Não roda em cron, não pode ser autônomo |
O que de fato funciona
| Caso de uso | Solução real |
|---|---|
| Cron 24/7 produzindo conteúdo no VPS | Continuar Anthropic API (Haiku 4.5) + Gemini 3 Flash Preview — custo à época: ~$0,30/dia |
| Você conversando com ChatGPT pra brainstorm criativo | Custom GPT com Action que lê o repositório GitHub do vault. Zero custo extra. Não roda em cron mas serve pra ideação |
| Reduzir custo Anthropic mais ainda | Migrar trabalhos simples (Organizador, Clipper) 100% pra Gemini 3 Flash Preview — economia ~60% |
Veredito: ChatGPT Plus não cabe na arquitetura de cron Beneverso.
F7 — UX dos outputs
Problema: clippings ilegíveis, frontmatter polui, sem diagramação.
- Reconfigurar Obsidian Properties pra esconder frontmatter por padrão (
.obsidian/app.json→propertiesInDocument: hidden). É só uma config de RENDERIZAÇÃO — afeta TODOS os arquivos (passado e futuro) de uma vez. - Reescrever
T_noticia_clipada.mdcom diagramação melhor: manchete em H1 grande; callout> [!info]com fonte + data + URL; resumo em parágrafo limpo; callout> [!tip]com "Por que importa pra Beneverso"; callout> [!example]com sugestão editorial; footer minimalista com tags. - Adicionar OpenGraph preview no Clipper: scrape
og:image+og:descriptionda matéria, embed inline. Retroativo nos ~50 clippings existentes via script one-shot. - Reescrever
T_relatorio_diario.mdcom sumário visual: TL;DR no topo, cards agrupados por tipo, pendências como checkbox. - Padronizar callouts em todos outputs — referenciar
Padroes_Frontmatter.md. - Bug fix
{{title}}: substituição não está acontecendo no Clipper.
F8 — Curadoria editorial unificada + peso de pauta + memória
Problema: Clipper repete matéria, Carrossel News sem memória, sem peso de pauta, Reflexão de Fontes morta.
F8.1 — Dedup + memória 7 dias no Clipper v3
- Antes de clipar: lê últimos 7 dias de clippings. Constrói índice de URLs + títulos normalizados.
- Regra de dedup:
- URL exato já clipada nos últimos 7 dias → SKIP
- Título similar (>70% Levenshtein) → SKIP
- Mesma
pauta_relacionadaclipada 3+ vezes nos últimos 7 dias → reduzpeso_editorialem 1 nível
F8.2 — Peso editorial granular (campo peso_editorial)
Substitui potencial_gancho (3 níveis) por peso_editorial (5 níveis):
| Nível | Quando usar | Exemplo |
|---|---|---|
| bomba | Escândalo verificado / fato eleitoral grande / Bené no centro / violência grande / PESQUISA ELEITORAL SENADO RJ (Datafolha/Quaest/Genial/Paraná Pesquisas/Ipec) | Áudio Flávio→Vorcaro pedindo R$ 61M; Datafolha senado RJ mostra Bené em 2º |
| alto | Pauta forte progressista / adversário em problema sério / evento institucional grande / pesquisa de presidente | STF derruba lei Bolsonaro / PEC Domésticas votada |
| medio | Pauta relevante mas sem viralidade | Conquista local pauta racial / declaração de Bené sem polêmica |
| baixo | Nicho / técnico / já cobrimos similar essa semana | 4ª matéria sobre tema doméstica repetido |
| arquivo | Vale pro arquivo histórico, não pra produção | Decreto técnico, dado de pesquisa não-acionável |
Regra automática pesquisa eleitoral senado RJ: qualquer matéria que mencione pesquisa Datafolha/Quaest/Genial/Paraná Pesquisas/Ipec/AtlasIntel + "senado" + "Rio de Janeiro" → automaticamente peso_editorial: bomba, sem importar veículo de origem ou frequência. Razão: é métrica DIRETA de viabilidade da campanha.
Regra automática: itens peso_editorial: bomba → DM Felipe IMEDIATAMENTE (não espera 02h cron), prioridade absoluta no Carrossel News do dia seguinte.
F8.3 — Carrossel News com memória editorial
Distinção importante (correção Felipe): a dedup é por MATÉRIA (URL/título), nunca por PAUTA. Pauta pode (e deve) se repetir ao longo do mês — o que não pode é a mesma matéria/manchete aparecer várias vezes na mesma semana. Diversificação de pauta é SOFT (incentivo de score), nunca bloqueio rígido.
- Dedup MATÉRIA (rígida): URL/manchete específica já virou carrossel nos últimos 7 dias → BLOQUEADA. Tem que ser outra matéria, mesmo dentro da mesma pauta.
- Diversificação PAUTA (soft):
- Pauta usada 0 vezes nos últimos 7 dias: bônus +30% no score
- Pauta usada 1 vez: score normal
- Pauta usada 2+ vezes: penalidade −30% (não bloqueia, só fica menos provável)
- Pauta usada 4+ vezes em 7 dias: penalidade −60% + alerta "saturação da pauta X, considerar outro formato"
- Exceção
peso:bomba: sobrescreve toda diversificação.
F8.4 — Editor de Pauta
Agente coordenador que cola tudo. Novo cron 08h-BR (depois de Clipper 02h e Organizador 04h).
- Lê: clippings da semana + clippings da semana passada + relatórios diários + feedback humano + pendências.
- Produz:
80_📤_Outputs/Pauta_Semanal/<YYYY-WW>.mdcom Top 5 ganchos da semana ranqueados; distribuição sugerida (dia × linha × personagem × formato); buracos identificados ("essa semana não saiu nada de pop"); saturação identificada ("doméstica saiu 4× em 7 dias"). - DM Felipe segunda 09h: "Top 3 pauta da semana + 1 alerta de saturação".
F8.5 — Reflexão de Fontes vivo de novo
- Clipper v3 atualiza ao final:
ultima_visita,qualidade_observada(1-5), linha no histórico. - Pesquisador Semanal roda domingo 22h: revisa fontes com sinal baixo (<2 em 14 dias), propõe novas.
F9 — Feedback humano a cada 2 dias via Obsidian
Problema: 6 pendências de 08/05 acumulando 10 dias, bot sem noção do que tá funcionando.
Solução: arquivo Obsidian pré-formatado, gerado a cada 2 dias, Felipe preenche quando tiver 5 minutos. Novo agente Validador Humano, terça 20h + sexta 20h, gera 80_📤_Outputs/Feedback_Humano/<YYYY-MM-DD>.md com os 3 carrosseis produzidos desde o último feedback e 5 perguntas curtas:
- "Postaria esse carrossel HOJE no IG? (sim / com edit / não)"
- "O tom tá Beneverso? (1-5)"
- "Faltou alguma pauta importante? (texto livre, opcional)"
- "Alguma fonte rendeu lixo essa semana? (texto livre)"
- "1 ajuste que faria nos agentes pra próxima rodada"
O próximo Clipper/Editor de Pauta lê o último feedback antes de rodar. "Postaria HOJE? = não" reduz o score da pauta+fonte em 25% nos próximos 7 dias.
F10 — Identidade Visual (REPLANEJADA 19/05 — virou ESTUDO)
⚠️ Esta é a frente que não foi executada. O que a casa usa hoje é outra coisa. Ver o aviso no topo desta página.
Mudança (decisão Felipe 19/05): F10 vira ESTUDO DE OPÇÕES, não execução imediata. Antes de criar identidade visual, avaliar 3 engines de design automatizado: Claude Design, Canva via MCP e Figma via MCP. Estado à época: Imagem Carrossel cron DESATIVADO até a decisão.
O que o documento propunha, caso o estudo confirmasse:
- Paleta: vermelho
#E63946(primary, militância) · amarelo#FFD93D(secondary, destaque) · roxo#5C2A7E(terciário, momentos afetivos) · preto#1A1A1A· off-white#F5F5F5 - Tipografia: display Inter Bold ou Montserrat Black; body Inter Regular
- Grid + safe-area pra Instagram 4:5 (1080×1350); logo no rodapé direito inferior, sempre
- Hashtag pattern fixo por linha: Militância
#Beneverso #PretaTeimosa #<pauta>· Deboche#Beneverso #JornalDeFeltro #<adversario>· Meme/Pop#Beneverso #<gancho-cultural> - Signature pattern (slide final): logo + @beneverso + tagline "Negra, mulher, da favela — RJ 2026"
- 3 templates visuais por linha: Militância (fundo cor sólida, texto é o protagonista, sem ilustração decorativa) · Deboche (feltro 3D, letras recortadas, personagem âncora visível) · Meme/Pop (caixa de tweet/print de manchete + comentário Beneverso sobreposto)
F11 — Migrar Pesquisador Semanal pra Custom GPT + GitHub Action
Por que mudou de cron para Custom GPT (decisão Felipe 19/05):
- Pesquisador no cron timeoutava (escopo amplo + grounding lento na VPS)
- GPT Deep Research é mais robusto pra pesquisa profunda
- ChatGPT Plus já é pago — sem custo incremental de API
- Output: PR no GitHub do vault → Felipe revisa e faz merge
Arquivos criados (existem, em 99_⚙️_Sistema/Custom_GPTs/Pesquisador_Semanal/):
INSTRUCTIONS.md— o prompt completo pra colar no Custom GPTACTIONS_SCHEMA.yaml— schema OpenAPI 3.0 com 3 endpoints GitHub (criar branch, criar/atualizar arquivo, abrir PR)SETUP.md— guia passo a passoREADME.md— overview, custos, troubleshooting
Riscos identificados: rate limit do GitHub (OK pra 1 run/semana) · ChatGPT Tasks não invoca Custom GPT específico (à época) · Deep Research consome até 30min por run · o PAT expira em 90 dias por padrão.
Critério de feito (verificação end-to-end)
Após F7-F9, em 7 dias de cron:
- Zero clippings duplicados (mesma URL ou >70% título-similar)
- Pauta "doméstica" NÃO aparece em mais de 1 carrossel em 7 dias (a menos que
peso_editorial:bomba) - Pelo menos 3 pautas distintas em carrosseis da semana
- Frontmatter colapsado no Obsidian
- Pelo menos 1 clipping com OG preview funcionando
- Bug
{{title}}resolvido - Relatório diário NÃO contém mais "(informação indisponível)"
- Reflexão de Fontes com histórico atualizado dia a dia
- Felipe preenche 1+ feedback e o próximo cron leu
O que o plano declara que NÃO faz
- Não toca Inbox Bot, Beneverso DM, Arquivista (escopo separado, funcionam)
- Não migra pra Gemini Flash todos os agentes (audit primeiro, decisão caso a caso)
- Não resolve as 6 pendências de 08/05 manualmente — o F9 força a decisão delas
- Não cria o Custom GPT no app ChatGPT — só monta os artefatos
- Não decide entre Claude Design / Canva MCP / Figma MCP pelo Felipe
Riscos mapeados
| Risco | Mitigação |
|---|---|
| Dedup do Clipper muito agressivo, perde pauta importante | Threshold 70% é conservador; bombas sempre passam |
| Memória do Carrossel News bloqueia pauta legítima | Bombas sobrescrevem; Editor de Pauta vê o quadro da semana |
| Feedback humano vira fricção e Felipe não preenche | Arquivo leve (3-5 min); após 2 ciclos pulados, muda pra semanal |
| Identidade visual ficar "engessada" | F10 são guidelines, não cadeias |
| OG scraping quebra em sites com bloqueio | Fallback: pula OG, mantém clipping sem preview |
Ajustes registrados na rodada de 19/05
- H1 com manchete adicionado em 33 clippings (script
fix_h1_manchete.py) - Banco de citações: 32 entradas ganharam 3 campos (Link, Tipo mídia, Auditado em)
Pendencias_Pesquisa_Humana.mdcriado (5 itens: Roda Viva 2002, Senado TV, autobiografia 1997, Marie Claire, livro Rosa Luxemburgo)- Imagem Carrossel cron DESATIVADO (até decisão F10)
- Pesquisador Semanal cron DESATIVADO (migrando pra Custom GPT — F11)
- Estado dos crons documentado: Clipper/Organizador/Carrossel ativos; Imagem/Pesquisador desabilitados; Curador aposentado; Arquivista mensal ocioso até 01/06
Original completo
O documento inteiro — incluindo a lista de arquivos a editar em cada frente, a
divisão de trabalho de F11 e a tabela de custo estimado — está em
_Claude_Agentes/Plano_Projeto_11_frentes.md. Na mesma pasta ficam os três
subagentes do Claude Code e a tarefa agendada do arquivista, descritos em
Os agentes do vault.