Una sola habilidad le enseña a tu agente tres flujos de trabajo de Pershot: una imagen de producto convertida en un anuncio 9:16, un anuncio hablado estilo UGC y un lote a partir de una hoja de cálculo. Cotiza cada tarea y espera tu confirmación antes de gastar un crédito.
Conectar tu propio agente de IA está abierto a todas las cuentas y no necesita clave. Las claves de la API para desarrolladores, que sirven para automatizar tu propio trabajo con código, requieren aprobación previa.
0103
Tres flujos de trabajouna regla
Cada flujo hace borradores económicos con Mini en 480p y ejecuta con Fast en 720p solo la versión que eliges.
01
Imagen de producto → anuncio 9:16
Revisa la foto, ofrece extenderla a un encuadre vertical, hace borradores de dos o tres movimientos de cámara y luego genera de nuevo con Fast el que elijas.
Prueba a pedir“Haz un anuncio 9:16 con esta foto de producto. Cotízalo primero.”
02
Anuncio hablado UGC
Una persona genérica, nunca una real, sostiene el producto y dice tu frase con su propia voz, grabado como un video de teléfono.
Prueba a pedir“Un anuncio hablado de 10 segundos para nuestro sérum. La frase: se absorbe rápido.”
03
Lote desde hoja de cálculo
Revisa cada fila, cotiza toda la hoja, la envía como lote con un límite total y exporta los resultados por SKU.
Prueba a pedir“Aquí está products.csv. Un clip de 5 segundos por fila, primero borradores.”
En cada flujo: cotizar, confirmar, generar. La habilidad muestra los créditos y dólares de exactamente lo que se ejecutará, espera tu confirmación y envía cada tarea con un límite de precio y una clave de idempotencia, para que un reintento nunca cobre dos veces.
0203
Instálalaen un minuto
El mismo zip funciona en todas partes: contiene una carpeta de habilidad con SKILL.md en su raíz.
01
Descarga el zip y descomprímelo en tu carpeta personal de habilidades, o en .claude/skills dentro de un repositorio para compartirlo con tu equipo.
Reinicia Codex si la habilidad no aparece y luego escribe $ y el nombre de la habilidad para llamarla. ¿Prefieres AGENTS.md? El zip incluye uno para pegar en el tuyo.
Codex
$pershot-video haz un anuncio 9:16 con product.png. Cotízalo primero
Markdown simple que puedes leer y editar. Las reglas de prompts de tu marca pueden ir directamente en SKILL.md.
pershot-video/SKILL.md
La habilidad: reglas, el ciclo cotizar-confirmar-generar y nociones básicas de prompts
pershot-video/AGENTS.md
Las mismas reglas en un solo archivo de instrucciones, para Codex
pershot-video/LICENSE
Texto de la licencia MIT
pershot-video/agents/openai.yaml
Nombre visible en Codex y el servidor MCP que usa
pershot-video/reference/api.md
Cada llamada a /v1 que hacen los flujos, con ejemplos
pershot-video/reference/mcp.md
Las herramientas MCP, cuáles gastan y cómo conectarse
pershot-video/workflows/product-to-ad.md
Imagen de producto → anuncio 9:16
pershot-video/workflows/spreadsheet-batch.md
Lote desde hoja de cálculo
pershot-video/workflows/ugc-talking-ad.md
Anuncio hablado UGC
Vista previa
---
name: pershot-video
description: Make short videos with Pershot (Seedance 2.0 Mini and Fast, Qwen-Image) on the user's own account, through its MCP tools or /v1 API. Use when the user wants a 9:16 ad from a product image, a UGC-style talking ad, or a batch of videos from a spreadsheet. Always quotes the price and waits for the user's yes before spending credits.
license: MIT
---
# Pershot video workflows
You help the user make short videos with Pershot: Seedance 2.0 Mini for cheap drafts, Seedance 2.0 Fast for finals, and Qwen-Image for stills and first frames. You work on the user's own Pershot account, as the user's own AI agent, and spend their creative balance like the studio does. Credits are the user's money: 1 credit = US$0.01.
## Rules that always apply
1. **Quote, confirm, generate.** Never call a spending tool or endpoint until you have shown the user the quoted credits and dollars for exactly what you will run, and they said yes. A yes covers only what you showed.
2. **Cap every job.** Pass the `quote_id` you showed (valid 10 minutes) or a `max_credits` equal to the confirmed amount. Never raise a cap without asking.
3. **One idempotency key per job.** Make a fresh key for each new job. On a retry after a timeout or network error, send the same key again: it returns the same job and never charges twice.
4. **Draft cheap, finish once.** Draft variants on Mini at 480p; run the one the user picks on Fast at 720p.
5. **Sign in as the user's agent, and keep it secret.** Over MCP the client signs in for you. With a shell, sign in by device login: the user confirms a short code in their browser and you receive a sign-in of your own on their account, which spends their creative balance like the studio ([reference/api.md](reference/api.md), "Sign in: device login"). Keep that sign-in in the `API_KEY` environment variable. Never write a sign-in, a connection code or a key into a prompt, a file, a commit or the chat. Developer API keys (`sk_…`) are by application; never ask the user for one, and use one only if the user already put it in `API_KEY`.
6. **Stop when money runs out.** On `insufficient_credits`, stop. The user has two balances that never cover each other, and `details.account` names the short one: `creative` (the studio, MCP, connection codes and device login) or `api` (a developer API key, by application). Ask the user to top up that balance at https://pershot.app/app/billing, or to raise the cap when `details.limit` is not `balance`. Never switch credentials, models or quality silently to fit a budget.
7. **Respect people and brands.** Faces of real people, celebrities and other companies' brands need the user's permission. If the quote's pre-check says `warn` or `block`, tell the user before anything runs. A refused job (`content_rejected`) is not charged.
8. **Hand over results promptly.** Result links are signed and expire after 24 hours. Give the links and tell the user to download what they keep.
## Connect
- **MCP (preferred):** the server at https://mcp.pershot.app/mcp. Tools: `list_models`, `get_model`, `get_pricing`, `quote`, `plan_auto`, `plan_image_auto`, `use_preset`, `create_upload`, `generate_video`, `generate_image`, `get_job`, `wait_for_job`, `cancel_job`, `get_balance`. Only `generate_video` and `generate_image` spend credits. Setup and details: [reference/mcp.md](reference/mcp.md).
- **HTTP API:** base https://api.pershot.app/v1, header `Authorization: Bearer $API_KEY` with the device-login sign-in, which spends the user's creative balance. The credential decides which balance pays: a developer API key (`sk_…`, by application) would spend the separate developer API balance instead. Endpoints and examples: [reference/api.md](reference/api.md). OpenAPI: https://pershot.app/api/v1/openapi.json
## The loop, every time
1. **Plan** the job with the user: model, resolution, duration, aspect ratio, how many variants.
2. **Quote** it: MCP `quote` (pass the prompt too, for the content pre-check) or `POST /v1/quotes`.
3. **Show** "N credits (≈ $X)" per job and the total, plus any pre-check note. Ask for a yes.
4. **Generate** with the `quote_id` (or `max_credits`) and a new idempotency key.
5. **Wait**: MCP `wait_for_job` (up to 60 s per call, repeat) or poll `GET /v1/jobs/{id}` every few seconds. `unknown` means the outcome is being checked with the model: keep waiting, do not resubmit.
6. **Report** status, credits charged and the result links. A job that makes no video (it failed, or the model refused it) or whose result a safety check blocked has its credits refunded automatically. A video that is made is charged, even if the user does not like it: offer another take, quoted and confirmed like the first. If a file is broken, the user reports it in the studio, and it is refunded after a check.
## Workflows
- Product image → 9:16 ad: [workflows/product-to-ad.md](workflows/product-to-ad.md)
- UGC talking ad: [workflows/ugc-talking-ad.md](workflows/ugc-talking-ad.md)
- Spreadsheet batch: [workflows/spreadsheet-batch.md](workflows/spreadsheet-batch.md)
## Writing prompts
- Three layers, in this order: subject and action; camera (one move, with speed, height and lens); light and style.
- More than one beat: a timeline, "0–2 s: … 2–5 s: …", covering the whole duration.
- Images: refer to them as @image1, @image2 and say what each is for ("keep the label from @image1").
- End with one short "Avoid:" line. Put spoken lines in quotes and say who speaks.
- Full guide: https://pershot.app/guides/seedance-prompting
## Limits to plan around
- Video: 4 to 15 whole seconds; 480p or 720p; 16:9, 9:16 or 1:1; audio on or off at the same price.
- Images: 1K or 2K; edit models need `image_url`; generate models reject it.
- Up to 9 reference images (API); images up to 10 MB (JPEG, PNG, WebP).
- Seedance first frames and reference images: 300 to 6000 px on each side, width ÷ height 0.4 to 2.5. An upload outside that is refused before anything is charged; resize or extend it first.
- Every limit per model, who checks it and what happens past it: the table at the end of [reference/api.md](reference/api.md), or `limits` in `GET https://api.pershot.app/v1/models`.
- 60 requests a minute per key; a few jobs run at once per account, the rest wait in the queue.
No incluye: claves de API, tokens, secretos de webhook ni datos de cuenta. La habilidad usa tu conexión MCP, o la sesión que obtiene con el inicio de sesión por dispositivo, guardada en la variable de entorno API_KEY.
Preguntassobre la habilidad
¿La habilidad puede gastar créditos por su cuenta?
No. Cotiza cada tarea, te muestra los créditos y dólares, y espera tu confirmación. Luego cada tarea lleva ese monto como límite, así que nunca puede costar más de lo que aprobaste.
¿Qué modelos usa?
Seedance 2.0 Mini para borradores en 480p y Seedance 2.0 Fast para versiones finales en 720p, además de Image Mini o Image Fast para extender o limpiar una foto de producto.
¿Puedo modificarla?
Sí. Es Markdown simple. Cambia los flujos, agrega tus propias reglas de prompts o borra lo que no necesites.
¿Funciona sin MCP?
Sí. Con una terminal llama directamente a la API /v1, con el inicio de sesión por dispositivo en tu propia cuenta, y gasta tu saldo creativo. Las claves de la API para desarrolladores requieren aprobación previa y gastan el saldo de la API para desarrolladores, que es independiente. reference/api.md muestra cada solicitud.
¿Dónde se guarda mi sesión?
En tu conexión MCP, o en una variable de entorno en tu equipo. Nunca en los archivos de la habilidad, y la habilidad le indica al agente que nunca la imprima ni la guarde. No necesita ninguna clave de API.