# Sora

> Use when the user wants to generate, remix, poll, list, download, or manage Sora videos via the OpenAI video API; prefer the bundled `scripts/sora.py`, require `OPENAI_API_KEY`, and treat video creation as an async workflow.

- Skill: `hebertzhu/sora` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add hebertzhu/sora`
- Raw SKILL.md: https://api.skillmd.com/api/skills/hebertzhu/sora/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Integrations & APIs
- Author: hebertzhu (https://skillmd.com/u/hebertzhu)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/hebertzhu/sora

---


# Sora

## Intent
- Use for short AI video generation, remixing, polling job status, and downloading generated media assets.

## Default operating pattern
1. Decide the intent first: create, remix, poll, list, or download.
2. Collect the exact prompt, duration, size, model, and any reference image or video identifiers before invoking the API.
3. Prefer the bundled `scripts/sora.py` so async video flows stay reproducible and easier to resume.
4. For remix flows, explicitly name the invariants so the new clip preserves the original shot where intended.
5. Poll until the job reaches a terminal state when the user needs a ready asset, then download and save the requested outputs.

## Bundled helper
- `scripts/sora.py` handles create, remix, polling, listing, and asset download for Sora jobs.

## Pack fit
- Included in: `docs-media`
- Useful for demos, marketing assets, motion concepts, and short product videos.

## Boundary
- Do not ask users to paste `OPENAI_API_KEY` into chat.
- Do not assume Sora access exists for the current account; if the API rejects access, surface that plainly.

