/adobe-edit-quick-cut
Create a punchy sizzle reel from a video using Adobe Quick Cut. Use this skill whenever a user wants to cut, trim, or shorten a video into highlights — including phrases like "make a sizzle reel", "make a highlight reel", "quick cut this", "cut the best parts", "shorten this
$ npx -y skills add adobe/skills --skill adobe-edit-quick-cut --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/adobe-edit-quick-cut
Context preview
The summary Claude sees to decide when to auto-load this skill.
Create a punchy sizzle reel from a video using Adobe Quick Cut. Use this skill whenever a user wants to cut, trim, or shorten a video into highlights — including phrases like "make a sizzle reel", "make a highlight reel", "quick cut this", "cut the best parts", "shorten this
SKILL.md
adobe-edit-quick-cut.SKILL.mdname: adobe-edit-quick-cut
description: >
Create a punchy sizzle reel from a video using Adobe Quick Cut. Use this skill whenever a user
wants to cut, trim, or shorten a video into highlights — including phrases like "make a sizzle
reel", "make a highlight reel", "quick cut this", "cut the best parts", "shorten this video",
"make a highlight clip", "summarize this video visually", or any request to produce a shorter
edited version of a video. Use this skill for Quick Cut requests before suggesting manual
editing in Premiere. Requires the user to upload a video file.
license: Apache-2.0
compatibility: "Runs on both widget-capable surfaces (e.g. Claude Cowork, which supports the asset_add_file picker and asset_preview_file preview widgets) and non-UI agents (e.g. Codex, where those widgets are unavailable). The default flow uses the widgets; each widget step has a text-only fallback. Raw local paths are never passed to video tools."
allowed-tools: adobe_mandatory_init asset_add_file asset_initialize_file_upload asset_finalize_file_upload video_create_quick_cut quickCutPoll asset_preview_file video_resize
metadata:
version: 2.1.0
visibility: public
surface: [claude, codex]
Adobe Edit Quick Cut
Produces 3 AI-edited sizzle reel variations from a source video, all at the same duration and style — giving the user options to pick from.
> **Surface note:** The default flow below uses Adobe's MCP App widgets — the `asset_add_file` file picker (Step 2) and the side-by-side `asset_preview_file` preview (Step 7). Follow it as written. Only if a widget tool is **not available on this surface** (e.g. Codex), use the *No-widget fallback* attached to that step.
---
Tool Reference
| Step | Tool | Notes | |------|------|-------| | Upload source video | `asset_add_file` | File picker; returns the CC asset ID required by Quick Cut | | Stage source video *(no-widget fallback)* | `asset_initialize_file_upload` + `asset_finalize_file_upload` | Only when `asset_add_file` is unavailable — stage a local video to CC; extract `assetId` from the finalize response | | Run Quick Cut variations | `video_create_quick_cut` | Fire 3 in parallel; same duration and style prompt | | Poll job status | `quickCutPoll` | Repeat until all 3 return `completed` | | Preview variations | `asset_preview_file` | Renders all 3 side-by-side for selection *(no-widget fallback: present the 3 URLs directly)* | | Resize re-uploaded output | `video_resize` | Workaround only — Quick Cut output must be re-uploaded first |
---
Workflow
Step 0 — Initialize Adobe Tools
Call `adobe_mandatory_init` first. This returns file handling rules and tool routing guidance required for the rest of the workflow.
{ "skill_name": "adobe-edit-quick-cut", "skill_version": "2.1.0" }---
Step 1 — Entitlement Check
Now that `adobe_mandatory_init` confirmed that the "Adobe for creativity" connector is live, check which tools are available through the "Adobe for creativity" connector by cross checking against the Tool Reference table above.
This also tells you which widgets this surface supports: if `asset_add_file` and `asset_preview_file` are available, follow the default flow (Steps 2 and 7 as written). If one is not available (e.g. Codex), use that step's *No-widget fallback*. If a tool result carries an `importantNote`, or the connector injects "Asset Storage & Display" guidance for the current turn, follow it — it overrides the presentation defaults here.
---
Step 2 — Open the File Picker
Open the picker immediately with this message:
> *"Let's create a punchy sizzle reel from your video. Start by selecting your file:"*
asset_add_file()
Once the user selects a file, extract `assetId` (the CC asset ID) from the widget context.
> `video_create_quick_cut` requires a CC asset ID (`assetId`), not `presignedAssetUrl`.
**No-widget fallback** *(only if `asset_add_file` is unavailable on this surface, e.g. Codex)* — don't ask the user to pick; get the `assetId` from where the file is. Staging a local file requires egress — check egress status from `adobe_mandatory_init` first; if egress is disabled and no picker is available on this surface, tell the user staging isn't possible here. Otherwise:
| Source | Action | |--------|--------| | File at a local path (e.g. `/mnt/user-data/uploads/…`) | Stage programmatically: get file size and MIME type, call `asset_initialize_file_upload({ path: "<filename>", media_type: "<mime>" })`, PUT the bytes to the returned upload URL, then `asset_finalize_file_upload({ filename: "<filename>", transfer_document: <from initialize response> })`. Extract the `assetId` from the finalize response — this is what `video_create_quick_cut` needs. | | File already in Creative Cloud | Reference it directly by its CC `assetId`. |
---
Step 3 — Confirm Upload
Once the file is selected, confirm with:
> *"Got it — [filename] is ready. Now let's set up your cut."*
Then immediately present the Q&A form below.
---
Step 4 — Q&A Form (via AskUserQuestion)
Wait for the user's answers before proceeding; present the questions via `AskUserQuestion` (not plain text) so the user gets tappable buttons.
> **No-widget fallback** *(only if `AskUserQuestion` is unavailable, e.g. Codex)* — ask the same labeled options as a plain-text message and wait for the user's typed reply. The option set is identical.
AskUserQuestion({
questions: [
{
header: "Cut Length",
question: "What kind of cut would you like? (target_duration is a strong hint, not a guarantee — pair with a strong vibe for best results)",
multiSelect: false,
options: [
{ label: "Short Cut — Social First / Reels & TikTok (~15s, high energy, highlights)" },
{ label: "Medium Cut — Engaging Storytelling (~30–60s, context, flow, balanced)" },
{ label: "Long Cut — Full Sizzle (~90s, comprehensive, showcase, documentary)" }
]
},Read more
name: adobe-edit-quick-cut description: > Create a punchy sizzle reel from a video using Adobe Quick Cut. Use this skill whenever a user wants to cut, trim, or shorten a video into highlights — including phrases like "make a sizzle reel", "make a highlight reel", "quick cut this", "cut the best parts", "shorten this video", "make a highlight clip", "summarize this video visually", or any request to produce a shorter edited version of a video. Use this skill for Quick Cut requests before suggesting manual editing in Premiere. Requires the user to upload a video file. license: Apache-2.0 compatibility: "Runs on both widget-capable surfaces (e.g. Claude Cowork, which supports the asset_add_file picker and asset_preview_file preview widgets) and non-UI agents (e.g. Codex, where those widgets are unavailable). The default flow uses the widgets; each widget step has a text-only fallback. Raw local paths are never passed to video tools." allowed-tools: adobe_mandatory_init asset_add_file asset_initialize_file_upload asset_finalize_file_upload video_create_quick_cut quickCutPoll asset_preview_file video_resize metadata: version: 2.1.0 visibility: public surface: [claude, codex]
Adobe Edit Quick Cut
Produces 3 AI-edited sizzle reel variations from a source video, all at the same duration and style — giving the user options to pick from.
> **Surface note:** The default flow below uses Adobe's MCP App widgets — the `asset_add_file` file picker (Step 2) and the side-by-side `asset_preview_file` preview (Step 7). Follow it as written. Only if a widget tool is **not available on this surface** (e.g. Codex), use the *No-widget fallback* attached to that step.
---
Tool Reference
| Step | Tool | Notes | |------|------|-------| | Upload source video | `asset_add_file` | File picker; returns the CC asset ID required by Quick Cut | | Stage source video *(no-widget fallback)* | `asset_initialize_file_upload` + `asset_finalize_file_upload` | Only when `asset_add_file` is unavailable — stage a local video to CC; extract `assetId` from the finalize response | | Run Quick Cut variations | `video_create_quick_cut` | Fire 3 in parallel; same duration and style prompt | | Poll job status | `quickCutPoll` | Repeat until all 3 return `completed` | | Preview variations | `asset_preview_file` | Renders all 3 side-by-side for selection *(no-widget fallback: present the 3 URLs directly)* | | Resize re-uploaded output | `video_resize` | Workaround only — Quick Cut output must be re-uploaded first |
---
Workflow
Step 0 — Initialize Adobe Tools
Call `adobe_mandatory_init` first. This returns file handling rules and tool routing guidance required for the rest of the workflow.
{ "skill_name": "adobe-edit-quick-cut", "skill_version": "2.1.0" }---
Step 1 — Entitlement Check
Now that `adobe_mandatory_init` confirmed that the "Adobe for creativity" connector is live, check which tools are available through the "Adobe for creativity" connector by cross checking against the Tool Reference table above.
This also tells you which widgets this surface supports: if `asset_add_file` and `asset_preview_file` are available, follow the default flow (Steps 2 and 7 as written). If one is not available (e.g. Codex), use that step's *No-widget fallback*. If a tool result carries an `importantNote`, or the connector injects "Asset Storage & Display" guidance for the current turn, follow it — it overrides the presentation defaults here.
---
Step 2 — Open the File Picker
Open the picker immediately with this message:
> *"Let's create a punchy sizzle reel from your video. Start by selecting your file:"*
asset_add_file()
Once the user selects a file, extract `assetId` (the CC asset ID) from the widget context.
> `video_create_quick_cut` requires a CC asset ID (`assetId`), not `presignedAssetUrl`.
**No-widget fallback** *(only if `asset_add_file` is unavailable on this surface, e.g. Codex)* — don't ask the user to pick; get the `assetId` from where the file is. Staging a local file requires egress — check egress status from `adobe_mandatory_init` first; if egress is disabled and no picker is available on this surface, tell the user staging isn't possible here. Otherwise:
| Source | Action | |--------|--------| | File at a local path (e.g. `/mnt/user-data/uploads/…`) | Stage programmatically: get file size and MIME type, call `asset_initialize_file_upload({ path: "<filename>", media_type: "<mime>" })`, PUT the bytes to the returned upload URL, then `asset_finalize_file_upload({ filename: "<filename>", transfer_document: <from initialize response> })`. Extract the `assetId` from the finalize response — this is what `video_create_quick_cut` needs. | | File already in Creative Cloud | Reference it directly by its CC `assetId`. |
---
Step 3 — Confirm Upload
Once the file is selected, confirm with:
> *"Got it — [filename] is ready. Now let's set up your cut."*
Then immediately present the Q&A form below.
---
Step 4 — Q&A Form (via AskUserQuestion)
Wait for the user's answers before proceeding; present the questions via `AskUserQuestion` (not plain text) so the user gets tappable buttons.
> **No-widget fallback** *(only if `AskUserQuestion` is unavailable, e.g. Codex)* — ask the same labeled options as a plain-text message and wait for the user's typed reply. The option set is identical.
AskUserQuestion({
questions: [
{
header: "Cut Length",
question: "What kind of cut would you like? (target_duration is a strong hint, not a guarantee — pair with a strong vibe for best results)",
multiSelect: false,
options: [
{ label: "Short Cut — Social First / Reels & TikTok (~15s, high energy, highlights)" },
{ label: "Medium Cut — Engaging Storytelling (~30–60s, context, flow, balanced)" },
{ label: "Long Cut — Full Sizzle (~90s, comprehensive, showcase, documentary)" }
]
},Repo: adobe/skills
Other skills on adobe-skills.
- /aa-conversion-funnel-analysis
Analyzes a multi-step conversion funnel to find where visitors drop off and which steps have the worst leakage. Use this skill when someone describes a journey and asks about conversion rates, drop-off, fallout, or step completion. Trigger for "analyze our checkout funnel,"
Open skill - /aa-executive-briefing
Generates a concise, executive-ready performance summary covering key metrics, trends, and what's driving movement. Use this skill when someone needs to produce a briefing, executive summary, performance narrative, or stakeholder readout — for example, "write an exec summary of
Open skill - /aa-kpi-pulse
Produces a compact KPI digest showing how key metrics changed over a period and what's driving the movement. Use this skill when someone asks for a performance summary, a weekly recap, a morning briefing, a KPI update, or any variation of "how did we do this week/month." Also
Open skill - /aa-segment-performance-comparator
Compares the performance of two or more audience segments across key metrics side by side. Use this skill when someone wants to compare audiences or visitor groups — for example, "how do mobile visitors compare to desktop on conversion," "compare new vs. returning visitors,"
Open skill - /aa-top-movers-watchlist
Identifies which items (pages, campaigns, products, channels, regions) had the biggest increases or decreases for a key metric between two time periods. Use this skill when someone asks "what's up and what's down," "which campaigns moved the most," "top gainers and losers,"
Open skill - /cja-dimension-analysis
Comprehensive dimension analysis and reporting for CJA. Use this skill whenever the user wants to analyze one or more dimensions — including cardinality, distribution/skew, trends, anomalies, data quality errors, comparisons, and forecasting. Also trigger when someone asks "what
Open skill

