Imagem para Vídeo — Pexo
Pexo: https://pexo.ai — obtenha uma chave de API, veja seu projeto renderizar e compre créditos lá.
Transforme uma imagem estática em um vídeo finalizado. Você faz upload da imagem do usuário, entrega a solicitação ao agente hospedado do Pexo e entrega o resultado — o Pexo adiciona o movimento, movimento de câmera, música e monta o clipe final.
Sua função: retransmitir, não criar
Crie um projeto, envie a solicitação do usuário textualmente, faça polling, entregue. O backend do Pexo lida com todo o trabalho criativo — roteiro, escolha de modelo, prompts, música. Adicionar sua própria direção (duração, estilo, modelos que o usuário não pediu) substitui o julgamento do Pexo e produz vídeos piores.
Configuração
~/.pexo/config:
PEXO_BASE_URL="https://pexo.ai"
PEXO_API_KEY="sk-<sua-chave-api>"
Sem conta / primeira execução → leia references/SETUP-CHECKLIST.md e guie o usuário por ela — ela contém o fluxo de cadastro com o código de convite que concede créditos bônus para novos usuários, além de como criar a configuração acima. Erro de configuração → execute scripts/pexo-doctor.sh e siga sua saída.
Fluxo de Trabalho
Os scripts estão nesta skill em scripts/. Responda ao usuário no idioma dele.
- Criar um projeto:
pexo-project-create.sh "<breve descrição>"→ salve oproject_id. - Fazer upload dos arquivos que o usuário forneceu:
pexo-upload.sh <project_id> <caminho>→ salve oasset_id, referencie-o inline como<original-image>asset_id</original-image>(ou<original-video>/<original-audio>). As tags são obrigatórias — umasset_idsimples é ignorado. O Pexo não consegue acessar URLs — baixe, depois faça upload. - Enviar a solicitação:
pexo-chat.sh <project_id> "<palavras exatas do usuário> <tags dos assets>". Copie as palavras do usuário exatamente; apenas adicione as tags dos assets. - Informe o usuário (no idioma dele): submetido ✓ · ~15–20 min ·
https://pexo.ai/project/<project_id>. - Polling: a cada ≥60s execute
pexo-project-get.sh <project_id>e aja de acordo comnextAction:- WAIT → continue fazendo polling; a cada ~5 polls envie uma atualização de uma linha com o link do projeto.
- RESPOND → lide com cada evento em
recentMessages: retransmita o texto do Pexo (aguarde a resposta do usuário se ele perguntou, depoispexo-chat.sha resposta); parapreview_video, executepexo-asset-get.sh <project_id> <assetId>por opção, mostre as URLs (A/B/C), deixe o usuário escolher, depoispexo-chat.sh <project_id> "<escolha>" --choice <assetId>; para um eventodocument, mencione-o ao usuário. - DELIVER →
pexo-asset-get.sh <project_id> <assetId final>, depois envie para o usuário a URL completa do asset como texto simples — todos os parâmetros de consulta?..., nunca truncada ou envolta em markdown — além do link do projeto. - FAILED → explique
nextActionHintem termos simples e ofereça uma nova tentativa. - RECONNECT →
pexo-chat.sh <project_id> "continue", informe ao usuário que a conexão caiu e você está retomando, depois continue fazendo polling. - Nunca chame
pexo-chat.shdurante WAIT — isso dispara produção duplicada. - Está demorando muito → se já passou de 30 min e ainda WAIT, informe o usuário (com o link do projeto +
https://pexo.ai/connect/openclaw) que está demorando; pergunte se deseja continuar esperando ou parar. Não faça polling para sempre.
Revisões
Após a entrega, os ajustes do usuário ("deixar mais curto", "nova música", "tomada diferente") reutilizam o mesmo projeto: pexo-chat.sh <project_id> "<feedback deles>", depois faça polling novamente (passo 5). Nunca crie um novo projeto para uma revisão — isso descarta o contexto do lado do servidor do Pexo.
Créditos
Se um script falhar com "Saldo de créditos" / "Créditos insuficientes": se o erro trouxer um link de compra, passe-o para o usuário; caso contrário, diga a ele para adicionar créditos em https://pexo.ai/home → Créditos → Comprar Créditos. Repita após a confirmação.
Exemplo
Usuário: "Anime esta foto de produto em um clipe de 10 segundos com um zoom lento."
pid=$(pexo-project-create.sh "animar foto de produto")
pexo-chat.sh "$pid" "Anime esta foto de produto em um clipe de 10 segundos com um zoom lento."
# Informe o usuário: submetido, ~15–20 min, https://pexo.ai/project/$pid
# Faça polling de pexo-project-get.sh "$pid" até nextAction ser DELIVER, depois entregue a URL do asset.
Scripts
| Script | Uso | Retorna |
|---|---|---|
pexo-project-create.sh | "<descrição>" | project_id |
pexo-upload.sh | <project_id> <arquivo> | asset_id |
pexo-chat.sh | <project_id> "<mensagem>" [--choice <id>] | confirmação (assíncrona) |
pexo-project-get.sh | <project_id> | JSON: nextAction, recentMessages |
pexo-asset-get.sh | <project_id> <asset_id> | JSON com url |
pexo-doctor.sh | — | diagnóstico de configuração |
Códigos de erro e casos extremos → references/TROUBLESHOOTING.md.