Skip to content
AI & Agents
Skill

/adobe-edit-quick-cut

Create a punchy highlight cut from a video with Adobe Quick Cut — for requests like "make a sizzle reel", "make a highlight reel", "quick cut this", "cut the best parts", "shorten this video", "make a highlight clip", or "summarize this video visually". Works from the user's

BOOST
From plugin
adobe-skills
190154 skills4 MCP
Install
$ npx -y skills add adobe/skills --skill adobe-edit-quick-cut --agent claude-code

How 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 highlight cut from a video with Adobe Quick Cut — for requests like "make a sizzle reel", "make a highlight reel", "quick cut this", "cut the best parts", "shorten this video", "make a highlight clip", or "summarize this video visually". Works from the user's

SKILL.md

adobe-edit-quick-cut.SKILL.md
name: adobe-edit-quick-cut
description: >
  Create a punchy highlight cut from a video with Adobe Quick Cut — for requests like "make a
  sizzle reel", "make a highlight reel", "quick cut this", "cut the best parts", "shorten this
  video", "make a highlight clip", or "summarize this video visually". Works from the user's
  original request without follow-up questions and produces one highlight cut. Do NOT use it for
  exact-timestamp trims ("cut from 0:30 to 1:15") or other deterministic edits — Quick Cut selects
  moments by relevance, not exact instructions; those need manual editing. Requires a video file
  (an upload or an already-referenced Creative Cloud asset).
license: Apache-2.0
compatibility: "Runs on widget-capable surfaces (e.g. Claude Cowork, which supports the asset_add_file picker and asset_preview_file preview widgets) and on surfaces where those widgets aren't available. The default flow uses the widgets; each widget step has a text-only fallback used only when that widget isn't available on the current surface. 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 asset_preview_file video_resize video_render
metadata:
  version: 3.0.0
  visibility: public
  surface: [claude, codex]

Adobe Edit Quick Cut

Produces **one** AI-edited highlight cut from a source video, working entirely from the user's original request. **No follow-up questions** — infer the intent and duration from what the user already said, fall back to a sensible default when they said nothing, and deliver a single preview.

> **Surface note:** The default flow uses Adobe's MCP App widgets — the `asset_add_file` file picker (Step 2) and the `asset_preview_file` preview (Step 5). Use a step's *No-widget fallback* only when that widget isn't available on the current surface — decide by availability, not by client name.

---

How Quick Cut Works — and What to Design Around

`video_create_quick_cut` is an AI rough-cut tool. Its `user_prompt` is a **description of the video and the kind of result you want** (e.g. "interview with a nonprofit for social fundraising"), not a list of pacing directives. It selects moments itself. Key limits, each mapped to a rule below:

| Quick Cut behavior / limit | Consequence | How this skill handles it | |---|---|---| | `user_prompt` describes **what the video is / is for** | Vague energy adjectives do little on their own | Send a clear description; merge the user's own words when given (Step 3) | | `target_duration` is a **soft target, not a hard trim** | Output can overshoot | Always pass a number — the user's length when given, else a **30s default** (Step 3) | | Output is a **transient presigned URL**, not a CC asset | The URL expires; can't feed `video_resize` directly | Preview **immediately** on completion (Step 5); re-ingest for resize (see *Known Gap*) | | An **identical prompt** tends to produce a **similar cut** | Re-runs give little variety | Offer another only with a **different intent or duration** (Step 6) | | **`video_create_quick_cut` runs async** (`status: "working"` → result on completion) | Proceeding on a "working" status skips the real result | Wait for the widget's completion event — never act on a "working" status (see *Async handling* below) |

> **Async handling (`video_create_quick_cut`):** A `status: "working"` response is **pending — not a failure and not missing output**; never treat it as either. **Polling is managed by the widget — wait for its completion event; do not call any poll tool yourself.** Only after a **completed** result — or a terminal failure — do you read the output or apply any fallback.

---

Tool Reference

| Tool | Purpose | |------|---------| | `adobe_mandatory_init` | Required init; returns file-handling rules and tool routing. | | `asset_add_file` | File picker; the widget injects the selected CC `assetId` into context on confirmation — wait for that, don't poll. | | `asset_initialize_file_upload` | No-widget staging fallback (step 1); begins a local-file upload. | | `asset_finalize_file_upload` | No-widget staging fallback (step 2); completes the upload and returns the `assetId`. | | `video_create_quick_cut` | Creates the highlight cut (one call). **Async** — may return `status: "working"`; the finished cut arrives when the job completes (widget-tracked). | | `asset_preview_file` | Renders the finished cut immediately on completion. | | `video_resize` | Resize workaround only, after re-ingesting a downloaded cut. | | `video_render` | For edits Quick Cut can't do — exact-timestamp trims, and adding/replacing music, audio, or images. |

---

Workflow

Step 0 — Initialize Adobe Tools

Call `adobe_mandatory_init` first.

{ "skill_name": "adobe-edit-quick-cut", "skill_version": "3.0.0" }

---

Step 1 — Entitlement Check

`adobe_mandatory_init` confirms the "Adobe for creativity" connector is live. Confirm `video_create_quick_cut` and `asset_preview_file` are available. If `asset_add_file` or `asset_preview_file` is unavailable on this surface, use that step's *No-widget fallback*. If a tool result carries an `importantNote` or "Asset Storage & Display" guidance, it overrides the presentation defaults here.

---

Step 2 — Get the Source Video

If the user's message already references a Creative Cloud asset (a CC `assetId`), use it directly. Otherwise — including a raw chat upload or a local file, which isn't usable until it reaches Creative Cloud — get it in first via the picker (or the no-widget staging fallback below):

> *"Let's create a highlight cut from your video. Start by selecting your file:"*

asset_add_file()

Extract `assetId` (the CC asset ID) from the widget context — the widget injects it on confirmation, so wait for that (don't poll).

> `video_create_quick_cut` requires a CC asset ID (`assetId`), not `presignedAssetUrl`.

**No

Read more
Ships withadobe-skills

Repository of Adobe skills for AI coding agents.

Get the whole plugin

Other skills on adobe-skills.