bounce12340/josh-video-skills

Grava a tela de páginas web públicas (rolagem, hover, cliques em links, destaque de elementos, capítulos) e exporta vídeo MP4 vertical 1080x1920, ideal como material para Reels e demonstrações de sites. Acione com frases como: "gravar operação de página web", "material de tour pelo site", "gravação de tela". Apenas páginas públicas, sem login ou postagens.

O que é josh-video-skills?

Este skill permite gravar a interação com páginas web públicas usando Playwright, gerando vídeos verticais 1080x1920 otimizados para IG Reels e demonstrações de sites. Ele suporta ações como rolagem, destaque de elementos, cliques em links, hover e capítulos com temporização. O skill é executado exclusivamente em um navegador temporário na memória, sem acesso a perfis de navegação logados, cookies ou dados persistentes, garantindo que apenas páginas públicas sejam gravadas. Ele bloqueia automaticamente requisições POST/PUT/DELETE e recusa especificações que incluam login, cookies ou perfis, sendo seguro para uso em ambientes de conteúdo editorial. O vídeo gerado pode ser integrado diretamente em projetos de edição de vídeo (stock footage, OpenMontage) com créditos apropriados. Plataformas suportadas: Playwright, Chromium, Node.js, shell scripts.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/bounce12340/josh-video-skills/tree/HEAD/screen-record

Installed? Explore more Programação e Desenvolvimento skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

screen-record: Gravação de Operações em Páginas Web Públicas (Material para Reels)

Josh, aprovado para instalação em 2026-10-11. Único propósito: gravar a tela de páginas web públicas para uso como material de vídeo para IG Reels. O fluxo de postagem permanece inalterado (IG / Threads usando o método do box browser); esta ferramenta não publica nada.

Regras rígidas (cumprir sempre)

  1. Use sempre um navegador novo, temporário e apenas em memória (chromium.launch() + newContext(), sem userDataDir).
  2. Nunca aponte para o perfil de navegador logado do box; nunca use --extension, attach, CDP / wsEndpoint para conectar ao box; nunca carregue cookies ou storageState; nunca use --persistent / --profile.
  3. Não faça login em nenhum site, não digite texto, não envie formulários, não publique, não comente, não curta.
  4. Grave apenas páginas públicas (http/https, não localhost / intranet). IG, Threads, FB apenas no estado "não logado" e apenas páginas públicas; se encontrar muro de login, mude de fonte, não tente fazer login.
  5. O record.mjs tem proteção embutida: se a especificação contiver storageState / cookies / userDataDir / profile / cdp / extension / login / password / fill / type, é rejeitado automaticamente; todas as requisições POST / PUT / PATCH / DELETE são bloqueadas (o log mostrará blocked POST ..., o que é normal); botões de envio de formulários não podem ser clicados; URLs não http(s) ou de intranet são recusados.
  6. Não modifique o record.mjs para contornar as proteções. Se realmente precisar de uma tela após login, pare e pergunte ao Josh.

Instalado

  • Playwright (biblioteca Node.js) 1.64.0: instalado na pasta node_modules/ (Apache-2.0)
  • Playwright CLI @playwright/cli 0.1.22: comando global playwright-cli (~/.local/bin, Apache-2.0). A sessão padrão é um perfil em memória, pode ser usado temporariamente para ver páginas e fazer capturas de tela; não use --persistent, --profile, attach --extension.
  • Chromium: npx playwright install chromium (~/.cache/ms-playwright/chromium-1248, chromium_headless_shell-1248)
  • @playwright/mcp não está instalado (CLI + este script é suficiente; a Microsoft também recomenda CLI para agentes).

Uso

cd <SKILLS_DIR>/screen-record
node record.mjs spec.json                 # saída em spec.out
node record.mjs spec.json --out /caminho/x.mp4
./contact_sheet.sh x.mp4 x_sheet.jpg 4 3  # mosaico 4x3, usar com Read

Exemplo: examples/playwright-mcp.json (vídeo de teste: <SEU_WORKSPACE>/media-team/03-drafts/screen-record-test/test.mp4, 19,8 seg, 4,1 MB).

spec.json

{
  "url": "https://github.com/microsoft/playwright-mcp",
  "out": "<SEU_WORKSPACE>/media-team/03-drafts/<tema>/work/screen/clip01.mp4",
  "viewport": {"width": 720, "height": 1280},
  "outSize": {"width": 1080, "height": 1920},
  "hide": [".cookie-banner"],
  "steps": [
    {"action": "chapter", "title": "Playwright MCP", "description": "github.com/microsoft/playwright-mcp", "ms": 2200},
    {"action": "scroll", "by": 500, "ms": 2000},
    {"action": "scroll", "role": "heading", "name": "Key Features", "ms": 2000},
    {"action": "highlight", "role": "heading", "name": "Key Features", "label": "Key Features", "ms": 2500},
    {"action": "hover", "text": "Getting started"},
    {"action": "click", "text": "Apache-2.0 license"},
    {"action": "goto", "url": "https://playwright.dev"},
    {"action": "wait", "ms": 1000}
  ]
}
  • Três formas de localizar um elemento: selector (CSS), role + name (mais estável), text (pode usar exact).
  • scroll: por by pixels, ou use to / role / text para rolar até um elemento (offset padrão 25% do topo), ms duração da rolagem (easing in-out).
  • highlight: moldura amarela + rótulo opcional, removido após ms.
  • chapter: card de capítulo nativo do Playwright (fundo desfocado + título).
  • click, hover têm showActions nativo do Playwright: cursor animado + contorno do alvo + descrição da ação (desativar com "showActions": false).
  • Outras opções: fps (padrão 30), crf (padrão 23), mobile (emulação de celular), colorScheme, locale, tail, keepWebm.

Dimensões da tela

O screencast do Playwright grava em pixels CSS (deviceScaleFactor não afeta o vídeo), então:

  • Padrão: viewport 720x1280, depois ampliado para 1080x1920 com lanczos: aparência de smartphone grande, letras legíveis, qualidade um pouco suave mas suficiente para Reels.
  • Para máxima nitidez: "viewport": {"width":1080,"height":1920} (layout de desktop, letras menores).
  • Para gravar na horizontal e depois cortar para vertical: "viewport": {"width":1280,"height":720}, "cropTo916": true (pode usar "cropX": 200 para definir o ponto de corte), saída ainda 1080x1920, mas apenas a faixa central; geralmente não é tão bom quanto usar viewport vertical diretamente.

Inserir no vídeo final

  • stock-footage-reel: no shots.json, escreva para a tomada: "pick": {"source":"file","path":"/abs/clip01.mp4","license":"Gravação de tela de <site>","author":"<proprietário do site>"}
  • OpenMontage (via openmontage-house): use como clipe local (local clip) na lista de materiais, ou como fonte de gravação real no fluxo screen-demo.
  • Regras da casa permanecem: vertical 1080x1920, narração Sarah Explains, legendas principais em chinês tradicional + inglês pequeno, capa Vox do B clip, vídeo IG com menos de 45 MB.
  • Adicione uma entrada no credits.json: {"source":"screen-record","credit":"Gravação de tela de <site>","url":"<URL>","recorded":"AAAA-MM-DD"}; nos créditos finais, escreva "Gravação de tela de ".
  • Como está gravando o site de outra pessoa: use apenas como material de apresentação / crítica; não grave conteúdo com dados pessoais, mensagens privadas ou paywall.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

bounce12340/josh-video-skills

「名人訪談/演講片段」直式 Reel(Fox Hsiao 式「解說穿插原聲」):配音依語言選聲(中文用「<YOUR_VOICE_NAME>」<YOUR_ELEVENLABS_VOICE_ID>;英文用 Sarah Explains)+繁中主字幕的解說段落,中間穿插 15 到 30 秒的名人原聲片段(16:9 置中、上下模糊底、「原聲 姓名|場合|日期」出處標籤、左上「影片/原頻道」),結尾拋問題給觀眾。一份 JSON spec 一路做到成片、720p 預覽、聯絡表、credits.json、封面。觸發語:「名人訪談」、「演講片段」、「訪談 Reel」、「Fox 式」、「解說加原聲」、「interview reel」。

bounce12340/josh-video-skills

收到「做一支影片/Reel」時先用:判斷影片類型、轉給對應的影片 skill,套用共用本家規則並交給事實編輯。只做草稿,不發文。

bounce12340/josh-video-skills

用 OpenMontage(開源 AI 影片製作流水線,<SKILLS_DIR>/OpenMontage)做 Josh 的影片時的「本家規則」轉接層。適用:長片剪成多支短片(clip-factory)、真實螢幕錄製教學(screen-demo)、翻譯配音(localization-dub)、Podcast 轉影片(podcast-repurpose)、「照這支參考影片做」(reference video 分析)、無旁白紀錄片蒙太奇(documentary-montage),以及幫 stock-footage-reel 加抓 NASA/國會圖書館/NARA/Archive.org 老片。觸發語:「用 OpenMontage」、「長片切短片」、「照這支 Reel 做」、「翻譯配音」、「螢幕教學影片」。

bounce12340/josh-video-skills

「真實素材剪輯」直式短影音(AYi @ayi_ainotes 那種紀錄片風):照口播稿每一句,自動搜尋並下載免費可商用素材(Pexels、Mixkit Free、Wikimedia Commons),加上洋紅調的 1950 到 70 年代 Prelinger 公有領域老片,硬切剪輯,燒上雙語字幕(繁中+英文,重點字金色),左上固定標題,ElevenLabs 配音,暗色合成器配樂,片尾金句卡加出處小字,再用 B 剪報 Vox 樣板出封面。觸發語:「做一支真實素材剪輯」、「stock footage reel」、「AYi 風格」、「素材庫剪輯」。

Habilidades Relacionadas