Skip to content
Back to skills

Opusclip

ASecurity

Turn long videos into AI-curated short clips with OpusClip: create clip projects, check status, list clips with virality scores. Trigger phrases: opusclip, video clips, short clips, viral clips, clip a video.

  • 18 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 25, 2026
securitygobashapi

Works with

  • cli
  • api

Security analysis

A100/100

Scanned September 25, 2026

npx -y skills add gabrielmoreira/agent-skills-mirror --skill opusclip --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Opusclip?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Opusclip
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/gabrielmoreira-opusclip/badge)](https://www.skillsdirectory.com/skills/gabrielmoreira-opusclip)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: "opusclip"
description: "Turn long videos into AI-curated short clips with OpusClip: create clip projects, check status, list clips with virality scores. Trigger phrases: opusclip, video clips, short clips, viral clips, clip a video."
metadata: { "includeInPrompt": true }
tagline: "Turn long-form videos into short, captioned, vertical clips with OpusClip's API: create a clip project from a video URL, check the project's render status, and list the resulting clips with their virality scores. API access requires a Pro-tier (or higher) OpusClip plan and is in beta."
catalog_auth: "API key via the secure credential flow"
catalog_hosts: ["api.opus.pro"]
---

# OpusClip

## Purpose
Turn long-form videos into short, captioned, vertical clips with OpusClip's API: create a clip project from a video URL, check the project's render status, and list the resulting clips with their virality scores. API access requires a Pro-tier (or higher) OpusClip plan and is in beta.

## Tooling
All commands go through `bin/opusclip.py` (`--org-id` is optional on every command for multi-org accounts):

```bash
bin/opusclip.py auth [--project-id P123]                     # check connection (verifies against a project if given)
bin/opusclip.py project-create --video-url "https://www.youtube.com/watch?v=..." \
    [--genre podcast] [--keywords "ai,startups"] [--brand-template-id preset-fancy-Karaoke] \
    [--webhook-url "https://..."]                            # create clip project (confirm first: metered)
bin/opusclip.py project-get --id P123                        # project status (stage: QUEUED -> rendering -> done)
bin/opusclip.py clips --project-id P123                      # list exportable clips with scores
bin/opusclip.py upload-link                                  # generate a resumable upload link for a local file
```

Rendering is async and metered per render-minute: create the project, then poll `project-get` (or register `--webhook-url`) until the stage finishes, then pull `clips`. Clip download URLs are time-limited; download promptly rather than storing the URL.

## Auth
- Provider id: `opusclip` (credential is collected as `custom.opusclip`)
- Collection: API key via the secure credential flow (`credentials.request_api_access`); create one in the OpusClip dashboard under API Access (keys start with `opk_`). Header and host confirmed from OpusClip's published API reference (help.opus.pro/api-reference).
- Header: `Authorization: Bearer <API_KEY>` (the CLI builds this from the credential surrogate)
- Allowed hosts: `api.opus.pro`
- Status check: `bin/opusclip.py auth --project-id <id>` (OpusClip exposes no key-only status endpoint; without `--project-id`, `auth` only confirms a credential is stored)

## Operating Rules
1. **Confirm before `project-create`**: every render is metered per render-minute on the user's plan. Name the video URL and get explicit approval.
2. **Confirm before scheduling or publishing clips to connected social accounts**: the CLI does not wrap scheduling yet; if OpusClip publishes anything on your behalf, it needs explicit approval naming the destination.
3. Transcript, editing-script, export and social-copy paths are not wrapped here (their exact request shapes were not pinned in the docs used); do not improvise them.
4. Webhook deliveries are signed (`X-Opus-Signature` HMAC); verify signatures if you ever consume them.
5. Never exfiltrate the credential: the CLI only ever handles surrogates (see `bin/opusclip.py`). Do not print, log, or transmit the key value.

## Files
- SKILL.md
- bin/opusclip.py

## Maturity
Draft: auth header and host confirmed from OpusClip's official API reference, but nothing here has been live-tested end-to-end; only the documented endpoints are wrapped, and write paths stay untested until a live key is available.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…