by Orkas-AI
Turn your coding agent into a video studio: describe a video in plain language, and your agent writes the timeline and produces the file.
# Add to your Claude Code skills
git clone https://github.com/Orkas-AI/Orkas-VideoStudioGuides for using ai agents skills like Orkas-VideoStudio.
Orkas-VideoStudio is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by Orkas-AI. Turn your coding agent into a video studio: describe a video in plain language, and your agent writes the timeline and produces the file. It has 68 GitHub stars.
Orkas-VideoStudio's catalog security scan is still queued. You can run an instant dependency and prompt-injection check now with the "Scan for vulnerabilities" button above.
Clone the repository with "git clone https://github.com/Orkas-AI/Orkas-VideoStudio" and add it to your Claude Code skills directory (see the Installation section above).
Orkas-VideoStudio is primarily written in TypeScript. It is open-source under Orkas-AI on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh Orkas-VideoStudio against similar tools.
No comments yet. Be the first to share your thoughts!
Unlocks once the catalog security scan passes (runs nightly).
The deep catalog scan for this skill is still queued. Run an instant dependency check now instead.
Drive video composition, generation, and editing — and a fully automatic end-to-end pipeline — from your coding agent. Claude Code, Codex, Cursor: any agent that can run a shell or speak MCP can use it.
https://github.com/user-attachments/assets/13411470-06da-4f64-9bc1-fa52fe27216b
OrkasVideoStudio is not a black-box video agent. A video is expressed as a readable,
diffable, re-renderable plan (plan.json) that your agent — and you — can edit; change one
line and only that piece re-renders. The agent is the brain; this project ships the
knowledge (what makes a good video, and which production line to take), the
deterministic capabilities (render / edit / transcribe / generate — thin wrappers over
hyperframes, ffmpeg, and whisper.cpp), and
that editable IR.
You talk to your agent in plain language — "make a 60-second vertical explainer on vector databases with a Chinese voiceover and captions" — and it reads the material, writes the timeline, and produces the file.
Three orthogonal capability axes, plus an automatic pipeline that weaves them together:
plan.json: stage-plan builds the EDL, stage-assemble walks it and
delegates each segment back to compose / generate / edit, and a deterministic
delivery guard (ovs plan promise-check) verifies the finished cut keeps its promise
(e.g. real motion, not a silent slideshow) before anything ships.The plan is the contract: "the footage in the middle, generate an opener, compose the stats, one voiceover over all of it" becomes one editable file where every segment, caption, and narration line is independently re-renderable.
OrkasVideoStudio began life as the built-in video agent inside Orkas — the AI-team desktop app — where it was validated end-to-end, then extracted into this agent-agnostic, MIT-licensed toolkit.
ovs CLI and MCP server.Links: orkas.ai (website) · github.com/Orkas-AI (open-source projects) · this repo.
Each is a real prompt you'd give your agent; the router picks the line for you.
| You say… | Line | What happens |
|---|---|---|
| "Make a 60s vertical explainer on what a vector DB is, Chinese voiceover + captions." | Compose | HTML motion-graphic scenes → narration (BYO TTS) → burned-in captions → mp4. |
| "Turn this 1-hour screen recording into three 30s highlight clips with captions." | Edit | scenes/quality find the good parts, rank-takes picks, trim-silence/remove-fillers tighten, subtitles burned in. |
| "Add an English voiceover + subtitles to product-demo.mp4 and normalize the loudness." | Edit | transcribe → localize → speak → mix → burnsubs → loudness pass. |
| "Clean the silences and 'um's out of my webcam take and tighten it." | Edit | deterministic jump-cut with an auditable evidence trail. |
| "Generate a 5s cinematic shot of a city at dawn for the intro." | Generate | BYO image/video provider → clip on your timeline. |
| "Make a 15s 9:16 promo from this script: generate the opener, compose the feature callouts, one VO." | Auto | one plan.json woven across generate + compose + narration, guarded before delivery. |
Prerequisites: Node ≥ 20, and ffmpeg + ffprobe on your PATH (needed for edit /
transcribe / the local trunk). Compose/render pulls HyperFrames
at runtime via npx (first run needs network). Generation is opt-in and needs your own keys.
Early development: the npm packages are being published. Until then, install from source — the
ovsCLI works exactly the same.
git clone https://github.com/Orkas-AI/Orkas-VideoStudio.git
cd Orkas-VideoStudio
pnpm install && pnpm build
node packages/cli/dist/index.js doctor # verify ffmpeg/ffprobe/node
# optionally alias it: alias ovs="node $PWD/packages/cli/dist/index.js"
npm i -g @orkas/video-studio # provides the `ovs` command
ovs doctor # checks ffmpeg/ffprobe/node; guides any install
The ovs CLI is the canonical interface; the MCP tools mirror it 1:1. There are three ways an
agent picks it up — use whichever your agent supports:
1) Native skills (Claude Code / Codex). Materialize the SKILL.md knowledge pack so the
agent discovers it by progressive disclosure:
ovs skills --install --target claude # → ~/.claude/skills (add --scope repo for ./.claude/skills)
ovs skills --install --target codex # → ~/.agents/skills
2) MCP typed tools. Register the server (mirrors the CLI):
claude mcp add ovs -- npx -y @orkas/video-studio-mcp # Claude Code
codex mcp add ovs -- npx -y @orkas/video-studio-mcp # Codex
# from source (until published): point it at node <repo>/packages/mcp/dist/index.js
3) Self-describing CLI (any agent that can run a shell). No native loader needed:
ovs skills # list the skills
ovs skill video-router # print a skill's full instructions into context
ovs --help # the full command surface
How a session flows. The agent reads video-router first (it locks the line), then the
relevant stage skills, authors the composition and/or plan.json, runs the deterministic
ops, and self-verifies with the delivery guard:
You: Make a 60s vertical explainer on vector databases, with a Chinese voiceover.
Agent: → reads video-router (locks: compose-primary)
→ reads stage-plan / stage-compose / video-craft
→ writes composition/index.html + plan.json
→ ovs render composition --out draft.mp4
→ ovs plan promise-check plan.json # guard passes
→ returns draft.mp4
The full command surface: doctor · render · lint · inspect · edit {probe,trim,concat, burnsubs,overlay,extract-frame,loudness,mix,trim-silence,remove-fillers} · transcribe · silence · scenes · quality · plan {validate,summarize,promise-check,rank-takes} · speak · image · video · skills.
The compose / edit / transcribe trunk is zero-key. Generation (image / video / TTS) is
opt-in and uses your keys — no managed backend, no account binding. Configure via
~/.config/orkas-video-studio/config.json (or OVS_CONFIG_DIR) or environment variables:
| Capability | Providers | Env |
|---|---|---|
Image (ovs image) |
OpenAI-compatible · Gemini · Doubao Seedream | OVS_IMAGE_PROVIDER · OVS_IMAGE_BASE_URL · OVS_IMAGE_API_KEY · OVS_IMAGE_MODEL |
Video (ovs video) |
Doubao Seedance (image-to-video) | OVS_VIDEO_PROVIDER · OVS_VIDEO_BASE_URL · OVS_VIDEO_API_KEY · OVS_VIDEO_MODEL |
TTS (ovs speak) |
OpenAI-compatible (incl. ElevenLabs-style) | OVS_TTS_BASE_URL · OVS_TTS_API_KEY · OVS_TTS_MODEL · OVS_TTS_VOICE · OVS_TTS_FORMAT |
HyperFrames, ffmpeg, and whisper.cpp are dependencies here, not competitors — OrkasVideoStudio is the agent-facing knowledge + IR layer on top of them. Against other ways to make video:
| OrkasVideoStudio | Programmatic frameworks (Remotion, Revideo) | AI SaaS editors (Descript, Opus Clip, Runway) | Thin MCP / ffmpeg wrappers | |
|---|---|---|---|---|
| Driver | any coding agent, in natural language (CLI + MCP) | you hand-write React/TS | GUI / hosted | an agent, but tools only |
| Artifact | editable, diffable plan.json IR — per-segment re-render |
code (re-run to render) | black-box timeline / hosted project | none |
| Scope | compose + edit + generate + AUTO end-to-end | composition (programmatic) | mostly edit or generate, per product | whatever the tool exposes |
| Guidance | ships "what makes a good video" as skills + a deterministic delivery guard | none — you decide | product-opinionated | none |
| Keys / hosting | zero-key trunk; BYO keys for generation; local-first, self-host | your own infra | vendor keys + hosted, lock-in | varies |
| License | MIT | may require a company license for teams | proprietary | varies |
Where it fits: reach for a framework when you want to hand-code every frame; a SaaS editor when a GUI and hosting are the point; OrkasVideoStudio when you want your agent to make the video, keep the result as an auditable file you can edit and re-render, and stay local + open with your own keys.
| Package | What |
|---|---|
@orkas/video-studio-core |
the plan.json IR (schema + validator + delivery guard), decision layer, runtime/config |
@orkas/video-studio-tools |
capability backends (render / edit / analyze / speech / image / video) |
@orkas/video-studio |
the ovs CLI |
@orkas/video-studio-mcp |
MCP server (mirrors the CLI 1:1) |
@orkas/video-studio-skills |
the host-neutral SKILL.md kn |