# Pedido comum aos agentes de cena (recriação On My Way, 17/10)

> Data: 2026-10-17 · Tipo: guia · Status: vigente

**Resumo:** regras que todo agente de cena segue: uma cópia própria do After Effects, um `.aep` próprio, cenas no contrato do `ROTEIRO-CENAS.md`, conferência visual com `ae_see` contra o original em vários instantes (inclusive no meio dos movimentos), nenhum render de vídeo.

## Onde está tudo

- Projeto: `<SUA_CENTRAL>/07-videos/projetos/2026-10-17-subzmotion-recriacao/` (raiz `P`). Leia `P/ROTEIRO-CENAS.md` inteiro antes de começar.
- Original: `<SUA_CENTRAL>/05-pesquisa/referencias/2026-10-17-subzmotion/midia/05-DeMZpQ5gv-t.mp4`. Folhas de contato: `.../dados-brutos/folhas/05-*` e `.../folhas/transicoes/05-*`. Decupagem: `.../evidencias/05-on-my-way.md`.
- Quadro do original em resolução cheia (o filtro de cor é obrigatório): `ffmpeg -v error -y -ss T -i ORIGINAL -frames:v 1 -vf "setparams=colorspace=bt709:color_primaries=bt709:color_trc=bt709,scale=flags=accurate_rnd" P/ref/<id>-tT.png`.
- Câmera: `P/camera/cena-<id>.json` (chaves por quadro) e `P/camera/encaixes.json`. Ajudantes: `P/ae/camera.jsx`, `P/ae/digitar.jsx` (leia o cabeçalho de cada um).

## After Effects (obrigatório)

1. Ferramentas `mcp__after-effects__*` (carregue por ToolSearch: `select:mcp__after-effects__ae_do,mcp__after-effects__ae_see,mcp__after-effects__ae_render_frame,mcp__after-effects__ae_review_motion,mcp__after-effects__ae_expressions_check,mcp__after-effects__ae_docs,mcp__after-effects__ae_lessons,mcp__after-effects__ae_save_project,mcp__after-effects__ae_checkpoint,mcp__after-effects__ae_get_skill,mcp__after-effects__ae_context`).
2. Abra a SUA cópia: `ae_do instance.start {name: "<seu nome>"}` e passe `instance: "<seu nome>"` em TODA chamada. Há outras cópias vivas; nunca mexa nelas.
3. Crie o seu projeto (`app.newProject()` + `app.project.save(File(...))`) em `P/ae/cenas-<seu nome>.aep`. Monte cada cena por um gerador comentado em `P/ae/<id>.jsx` rodado num `eval.run` só, com a comp fechada (ES3: var, function, sem arrow/let/template). Carregue os ajudantes com `$.evalFile(P + "ae/camera.jsx")` e `$.evalFile(P + "ae/digitar.jsx")`. Efeitos por matchName; descubra parâmetros listando antes de setar. Antes de começar, `ae_lessons search` com o tema.
4. Interfaces: faça em HTML/CSS e tire PNG com Playwright em 3× (`device_scale_factor=3`), sem os textos que serão digitados (esses são camadas de texto no AE). Guarde HTML e PNG em `P/assets/<id>/`. Fonte nova: baixe (Google Fonts) e instale em `C:\Program Files\Common Files\Adobe\Fonts` (só aparece após reiniciar a sua cópia). Sugestões: Google Sans Flex (Google), Figtree (Spotify), Roboto (Instagram/Maps), Segoe UI (Windows), serifadas do Google Fonts para os jornais.
5. Imagens: `python -P "<SUA_CENTRAL>/08-integracoes/codex-imagem.py" "prompt em inglês" P/assets/<id>/nome.png` (~60–90 s cada; no máximo 2 ao mesmo tempo por agente). Ícones oficiais de apps citados podem vir do simpleicons/Wikimedia.
6. Olhe sempre: `ae_see` da comp da cena com `reference: {video: ORIGINAL}` nos mesmos tempos (REF | NOSSO | DIF). Confira pelo menos: o `ref`, o começo e o fim da cena, o instante de cada troca e 3 quadros no meio de movimentos. Onde o enquadramento não bater, corrija os keyframes dos controles do CAM (a medição é ponto de partida, tem trechos contaminados) ou a posição dos elementos no mundo. `ae_review_motion` no fim; `ae_expressions_check` depois de expressões.
   Pegadinhas já vistas (17/10): `eval.run` só devolve valor com `return`; caminho com "ç" em `File`/`$.evalFile` vai codificado: `File.decode("<HOME>/Documents/Cria%C3%A7%C3%A3o%20de%20conteudo/...")`; `app.newProject()` com projeto sujo abre diálogo de salvar (feche antes com `app.project.close(CloseOptions.DO_NOT_SAVE_CHANGES)`); se der DIALOG_OPEN, `instance.dismiss_dialog {id}`. Adicionar efeito/forma invalida referências antigas: crie tudo e busque de novo pelo nome.
   Personagens comuns (mesmas pessoas em várias cenas) ficam em `P/assets/comum/` (avatar-lu, avatar-produtor, avatar-mari, avatar-seu, wallpaper-produtor; sendo gerados agora, chegam em ~5 min). Não gere outra versão deles.
   Medidas que já sabemos do autor: borrão de movimento ≈ ¼ do deslocamento do quadro (obturador ~90°; confira contra o original e anote se precisar de outro valor); digitação começa até 0,35 s antes da palavra cantada.
7. **Não use `ae_render_video`** (RAM: um render pesado por vez; quem renderiza é o coordenador). Quadros soltos podem.
8. No fim: `ae_save_project`, `instance.stop {name, save: true}` e uma ficha curta em `P/revisao/<seu nome>.md` (o que fez, o que ficou diferente do original, onde mexer).

## Escrita e direitos

- Português do Brasil simples. **Não escreva letra de música em lugar nenhum** (nem verso, nem tradução, nem paráfrase); use só os textos do roteiro. Pessoas reais e marcas de jogo viram personagens e imagens originais.
- Credencial nunca em texto. Não faça commit.
