[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-openai-adobe-edit-quick-cut":3,"mdc-qf90ug-key":33,"related-org-openai-adobe-edit-quick-cut":2794,"related-repo-openai-adobe-edit-quick-cut":2998},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":22,"repoUrl":23,"updatedAt":24,"license":25,"forks":26,"topics":27,"repo":28,"sourceUrl":31,"mdContent":32},"adobe-edit-quick-cut","create video sizzle reels","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.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},"openai","OpenAI","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fopenai.png",[12,16,19],{"name":13,"slug":14,"type":15},"Editing","editing","tag",{"name":17,"slug":18,"type":15},"Creative","creative",{"name":20,"slug":21,"type":15},"Video","video",4888,"https:\u002F\u002Fgithub.com\u002Fopenai\u002Fplugins","2026-08-28T15:09:07.765245","Apache-2.0",661,[],{"repoUrl":23,"stars":22,"forks":26,"topics":29,"description":30},[],"OpenAI Plugins","https:\u002F\u002Fgithub.com\u002Fopenai\u002Fplugins\u002Ftree\u002FHEAD\u002Fplugins\u002Fadobe\u002Fskills\u002Fadobe-edit-quick-cut","---\nname: adobe-edit-quick-cut\ndescription: >\n  Create a punchy sizzle reel from a video using Adobe Quick Cut. Use this skill whenever a user\n  wants to cut, trim, or shorten a video into highlights — including phrases like \"make a sizzle\n  reel\", \"make a highlight reel\", \"quick cut this\", \"cut the best parts\", \"shorten this video\",\n  \"make a highlight clip\", \"summarize this video visually\", or any request to produce a shorter\n  edited version of a video. Use this skill for Quick Cut requests before suggesting manual\n  editing in Premiere. Requires the user to upload a video file.\nlicense: Apache-2.0\ncompatibility: \"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.\"\nallowed-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\nmetadata:\n  version: 2.1.0\n  visibility: public\n  surface: [claude, codex]\n---\n\n# Adobe Edit Quick Cut\n\nProduces 3 AI-edited sizzle reel variations from a source video, all at the same duration and\nstyle — giving the user options to pick from.\n\n> **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.\n\n---\n\n## Tool Reference\n\n| Step | Tool | Notes |\n|------|------|-------|\n| Upload source video | `asset_add_file` | File picker; returns the CC asset ID required by Quick Cut |\n| 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 |\n| Run Quick Cut variations | `video_create_quick_cut` | Fire 3 in parallel; same duration and style prompt |\n| Poll job status | `quickCutPoll` | Repeat until all 3 return `completed` |\n| Preview variations | `asset_preview_file` | Renders all 3 side-by-side for selection *(no-widget fallback: present the 3 URLs directly)* |\n| Resize re-uploaded output | `video_resize` | Workaround only — Quick Cut output must be re-uploaded first |\n\n---\n\n## Workflow\n\n### Step 0 — Initialize Adobe Tools\n\nCall `adobe_mandatory_init` first. This returns file handling rules and tool routing guidance required for the rest of the workflow.\n\n```json\n{ \"skill_name\": \"adobe-edit-quick-cut\", \"skill_version\": \"2.1.0\" }\n```\n\n---\n\n### Step 1 — Entitlement Check\n\nNow 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.\n\nThis 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.\n\n---\n\n### Step 2 — Open the File Picker\n\nOpen the picker immediately with this message:\n\n> *\"Let's create a punchy sizzle reel from your video. Start by selecting your file:\"*\n\n```javascript\nasset_add_file()\n```\n\nOnce the user selects a file, extract `assetId` (the CC asset ID) from the widget context.\n\n> `video_create_quick_cut` requires a CC asset ID (`assetId`), not `presignedAssetUrl`.\n\n**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:\n\n| Source | Action |\n|--------|--------|\n| File at a local path (e.g. `\u002Fmnt\u002Fuser-data\u002Fuploads\u002F…`) | Stage programmatically: get file size and MIME type, call `asset_initialize_file_upload({ path: \"\u003Cfilename>\", media_type: \"\u003Cmime>\" })`, PUT the bytes to the returned upload URL, then `asset_finalize_file_upload({ filename: \"\u003Cfilename>\", transfer_document: \u003Cfrom initialize response> })`. Extract the `assetId` from the finalize response — this is what `video_create_quick_cut` needs. |\n| File already in Creative Cloud | Reference it directly by its CC `assetId`. |\n\n---\n\n### Step 3 — Confirm Upload\n\nOnce the file is selected, confirm with:\n\n> *\"Got it — [filename] is ready. Now let's set up your cut.\"*\n\nThen immediately present the Q&A form below.\n\n---\n\n### Step 4 — Q&A Form (via AskUserQuestion)\n\nWait for the user's answers before proceeding; present the questions via `AskUserQuestion` (not plain text) so the user gets tappable buttons.\n\n> **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.\n\n```javascript\nAskUserQuestion({\n  questions: [\n    {\n      header: \"Cut Length\",\n      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)\",\n      multiSelect: false,\n      options: [\n        { label: \"Short Cut — Social First \u002F Reels & TikTok (~15s, high energy, highlights)\" },\n        { label: \"Medium Cut — Engaging Storytelling (~30–60s, context, flow, balanced)\" },\n        { label: \"Long Cut — Full Sizzle (~90s, comprehensive, showcase, documentary)\" }\n      ]\n    },\n    {\n      header: \"Style \u002F Vibe\",\n      question: \"What style or vibe would you like?\",\n      multiSelect: false,\n      options: [\n        { label: \"Action & Energy\" },\n        { label: \"Key Talking Moments\" },\n        { label: \"Cinematic & Dramatic\" },\n        { label: \"No Preference\" }\n      ]\n    }\n  ]\n})\n```\n\nWait for the user's selections before proceeding to Step 5.\n\n---\n\n### Step 5 — Acknowledge and Run\n\nOnce the user answers, respond with:\n\n> *\"Got it — [cut type], [style] vibe. Creating 3 variations at that length — let me preview them for you.\"*\n\nMap their answers to parameters:\n\n**Q1 duration map:**\n| Answer                                              | target_duration |\n| --------------------------------------------------- | --------------- |\n| 1. Short Cut — Social First \u002F Reels & TikTok (~15s) | 15              |\n| 2. Medium Cut — Engaging Storytelling (~30–60s)     | 45              |\n| 3. Long Cut — Full Sizzle (~90s)                    | 90              |\n\n**Q2 style map:**\n\n> ⚠️ The `user_prompt` is the primary lever for output quality — it does more work than\n> `target_duration`. Pass the prompts below verbatim — abbreviating them weakens the output.\n> The energy language in the prompt reinforces the intended duration feel and moment selection.\n\n| Answer                  | user_prompt                                                                                                                                                                                                      |\n| ----------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| 1. Action & Energy      | `\"Fast, punchy, hype, high energy. Hit hard and fast. Quick cuts, peak moments only, adrenaline rush from start to finish. No slow moments, no breathing room. Pure intensity.\"`                                 |\n| 2. Key Talking Moments  | `\"Polished, commercial, confident. Smooth pacing with deliberate rhythm. Each moment feels intentional and curated. Moderate energy — impressive but controlled. Professional and refined.\"`                     |\n| 3. Cinematic & Dramatic | `\"Documentary, cinematic, immersive. Let moments breathe and unfold naturally. Build a story arc with texture and depth. Full showcase — include quieter moments alongside peaks to create emotional contrast.\"` |\n| 4. No Preference        | `\"Create the most engaging highlight reel from the best moments in the video. Balance energy and pacing naturally.\"`                                                                                             |\n\nFire all 3 Quick Cut jobs **simultaneously** — same duration, same style prompt. The AI will\nnaturally select different moments on each run, giving the user 3 genuine options to pick from:\n\n```javascript\n\u002F\u002F Variation A\nvideo_create_quick_cut({\n  assetIds: [assetId],\n  target_duration: \u003Cmapped_seconds>,\n  user_prompt: \"\u003Cmapped style prompt>\"\n}) \u002F\u002F → statusId_A\n\n\u002F\u002F Variation B\nvideo_create_quick_cut({\n  assetIds: [assetId],\n  target_duration: \u003Cmapped_seconds>,\n  user_prompt: \"\u003Cmapped style prompt>\"\n}) \u002F\u002F → statusId_B\n\n\u002F\u002F Variation C\nvideo_create_quick_cut({\n  assetIds: [assetId],\n  target_duration: \u003Cmapped_seconds>,\n  user_prompt: \"\u003Cmapped style prompt>\"\n}) \u002F\u002F → statusId_C\n```\n\n---\n\n### Step 6 — Poll Until All 3 Complete\n\nPoll all 3 in each round using `quickCutPoll(statusId)`. Show progress % after each round.\nRepeat until all 3 return `jobStatus: \"completed\"`.\n\nTypical pattern: 0% → 7% → 78% → done. Usually 3–5 poll rounds.\n\nStore:\n- `url_A` — Variation A presignedAssetUrl\n- `url_B` — Variation B presignedAssetUrl\n- `url_C` — Variation C presignedAssetUrl\n\n---\n\n### Step 7 — Preview All 3\n\n```javascript\nasset_preview_file({\n  assets: [\n    { name: \"Variation 1 — \u003Ccut_type> \u003Cstyle>.mp4\", presignedAssetUrl: url_A, source: \"acp\" },\n    { name: \"Variation 2 — \u003Ccut_type> \u003Cstyle>.mp4\", presignedAssetUrl: url_B, source: \"acp\" },\n    { name: \"Variation 3 — \u003Ccut_type> \u003Cstyle>.mp4\", presignedAssetUrl: url_C, source: \"acp\" }\n  ]\n})\n```\n\n**No-widget fallback** *(only if `asset_preview_file` is unavailable on this surface, e.g. Codex)* — present all 3 variation URLs directly in the message, labeled by variation:\n\n```\nVariation 1 — \u003Ccut_type> \u003Cstyle>.mp4 → \u003Curl_A>\nVariation 2 — \u003Ccut_type> \u003Cstyle>.mp4 → \u003Curl_B>\nVariation 3 — \u003Ccut_type> \u003Cstyle>.mp4 → \u003Curl_C>\n```\n\nUI clients that render media URLs inline will show previews automatically. In Codex or other non-UI agents, download each to the workspace (`curl -L -o variation_1.mp4 \"\u003Curl_A>\"`, etc.) and reference those local paths instead.\n\n---\n\n### Step 8 — Deliver Summary + Download Prompt\n\nAfter preview, present:\n\n```\n✅ 3 variations ready — same length, different moment selection. Pick your favorite!\n\n| Variation | Cut Type | Style   | Target | Status |\n| --------- | -------- | ------- | ------ | ------ |\n| 1         | \u003Ctype>   | \u003Cstyle> | ~\u003CXs>  | ✅      |\n| 2         | \u003Ctype>   | \u003Cstyle> | ~\u003CXs>  | ✅      |\n| 3         | \u003Ctype>   | \u003Cstyle> | ~\u003CXs>  | ✅      |\n```\n\n> Note: actual durations may vary — Quick Cut selects the best moments rather than cutting to\n> an exact second. The prompt vibe (e.g. \"no breathing room\") reinforces the intended length\n> feel more than the target_duration parameter alone.\n\nThen prompt:\n\n> *\"Which variation do you want to download, or would you like all 3? You can also rerun with a different style or cut type.\"*\n\nThe videos are available for download directly from the preview above (or from the links above on a no-widget surface).\n\n---\n\n## ⚠️ Known Gap — Output Cannot Feed Downstream Video Tools\n\n`video_create_quick_cut` returns a temporary presigned download URL, not a CC-stored asset ID.\nTools like `video_resize` and `media_enhance_speech` require a CC asset ID as input.\n\n**You cannot chain Quick Cut → Resize or Quick Cut → Enhance Speech directly.**\n\n**Workaround — if user wants to resize a Quick Cut output:**\n1. Tell the user: *\"Quick Cut outputs can't be passed directly to the resize tool — you'll need to download your preferred cut first, then re-upload it and I'll resize from there.\"*\n2. Let them download from the preview.\n3. Re-ingest the downloaded file exactly as in Step 2 (`asset_add_file()`, or the no-widget staging fallback).\n4. Once re-uploaded, run `video_resize` on the fresh `assetId` with their target dimensions.\n\nWhen the user asks to resize or enhance a Quick Cut output, surface the limitation proactively — the chain is known to fail.\n\n---\n\n## What Quick Cut Does NOT Support\n\n- Content-aware cuts based on speech (\"remove the parts where they repeat themselves\")\n- Trimming to specific timestamps (\"cut from 0:30 to 1:15\")\n- Semantic understanding of dialogue\n\nFor these, recommend a manual video-editing workflow.\n\n---\n\n## Error Handling\n\n- **`video_create_quick_cut` returns 403 (entitlement)**: Retrying does not help for a 403\n  entitlement — stop and surface the plan requirement. Respond with:\n  > *\"I was unable to create your quick cut.*\n  >\n  > ***Why:** Adobe Quick Cut isn't available on your current Adobe plan.*\n  >\n  > ***Options:**\n  > - Upgrade your Adobe plan to one that includes Quick Cut.*\n  > - Manually trim your video using Adobe Premiere Rush or Premiere Pro.*\n  >\n  > *Let me know how you'd like to proceed.\"*\n\n- **Any tool call returns 401 (not authenticated)**: Ask the user to re-authenticate via Adobe\n  OAuth and retry.\n\n- **`StoryBuilderNoARoll`**: The most common error. Means Quick Cut detected no A-roll (talking\n  head \u002F primary camera footage) in the clip — only B-roll. The tool requires at least some\n  dialogue or narration to anchor the story structure. Respond with:\n  > *\"This video appears to be B-roll only — scenery, action, or product shots without anyone\n  > speaking to camera. Quick Cut needs some talking-head footage to build a story around. Try\n  > uploading a video that includes someone speaking on camera, or a mix of interview + B-roll.*\n  >\n  > *If you only have B-roll, Adobe Premiere Rush or Adobe Express let you manually assemble a\n  > highlight reel without requiring dialogue.\"*\n  Retries repeat the same error regardless of duration\u002Fstyle; no workaround exists.\n\n- **Job fails with any other error on first attempt**: Retry once with the same parameters. If\n  it fails again, report and suggest re-uploading the source video.\n\n- **Stuck at same % for 5+ poll rounds**: Inform user, suggest re-uploading the source video.\n\n- **User uploads an image by mistake**: Detect from `mediaType` — if not `video\u002F*`, say so\n  and re-open the picker (or re-run the no-widget staging fallback).\n\n- **One of the 3 variations fails (but not all)**: Preview and deliver the successful ones, note\n  the failure clearly. If all 3 fail with `StoryBuilderNoARoll`, apply the B-roll error response\n  above.\n\n---\n\n## Constraints\n\n- Never pass a raw local filesystem path to `video_create_quick_cut` or any other video tool. Local files must reach Creative Cloud first — selected via the `asset_add_file` picker, or (no-widget fallback) staged via `asset_initialize_file_upload` → PUT → `asset_finalize_file_upload`; only the resulting `assetId` is valid.\n- `video_create_quick_cut` requires `assetId` (CC asset ID), not `presignedAssetUrl`.\n",{"data":34,"body":43},{"name":4,"description":6,"license":25,"compatibility":35,"allowed-tools":36,"metadata":37},"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.","adobe_mandatory_init asset_add_file asset_initialize_file_upload asset_finalize_file_upload video_create_quick_cut quickCutPoll asset_preview_file video_resize",{"version":38,"visibility":39,"surface":40},"2.1.0","public",[41,42],"claude","codex",{"type":44,"children":45},"root",[46,54,60,107,111,118,320,323,329,336,349,445,448,454,466,499,502,508,513,524,547,559,587,624,716,719,725,730,748,753,756,762,775,799,1346,1351,1354,1360,1365,1389,1394,1402,1463,1471,1494,1582,1594,1926,1929,1935,1955,1960,1965,2003,2006,2012,2292,2312,2322,2335,2338,2344,2349,2358,2366,2371,2382,2387,2390,2396,2420,2428,2436,2487,2492,2495,2501,2519,2524,2527,2533,2714,2717,2723,2789],{"type":47,"tag":48,"props":49,"children":50},"element","h1",{"id":4},[51],{"type":52,"value":53},"text","Adobe Edit Quick Cut",{"type":47,"tag":55,"props":56,"children":57},"p",{},[58],{"type":52,"value":59},"Produces 3 AI-edited sizzle reel variations from a source video, all at the same duration and\nstyle — giving the user options to pick from.",{"type":47,"tag":61,"props":62,"children":63},"blockquote",{},[64],{"type":47,"tag":55,"props":65,"children":66},{},[67,73,75,82,84,90,92,97,99,105],{"type":47,"tag":68,"props":69,"children":70},"strong",{},[71],{"type":52,"value":72},"Surface note:",{"type":52,"value":74}," The default flow below uses Adobe's MCP App widgets — the ",{"type":47,"tag":76,"props":77,"children":79},"code",{"className":78},[],[80],{"type":52,"value":81},"asset_add_file",{"type":52,"value":83}," file picker (Step 2) and the side-by-side ",{"type":47,"tag":76,"props":85,"children":87},{"className":86},[],[88],{"type":52,"value":89},"asset_preview_file",{"type":52,"value":91}," preview (Step 7). Follow it as written. Only if a widget tool is ",{"type":47,"tag":68,"props":93,"children":94},{},[95],{"type":52,"value":96},"not available on this surface",{"type":52,"value":98}," (e.g. Codex), use the ",{"type":47,"tag":100,"props":101,"children":102},"em",{},[103],{"type":52,"value":104},"No-widget fallback",{"type":52,"value":106}," attached to that step.",{"type":47,"tag":108,"props":109,"children":110},"hr",{},[],{"type":47,"tag":112,"props":113,"children":115},"h2",{"id":114},"tool-reference",[116],{"type":52,"value":117},"Tool Reference",{"type":47,"tag":119,"props":120,"children":121},"table",{},[122,146],{"type":47,"tag":123,"props":124,"children":125},"thead",{},[126],{"type":47,"tag":127,"props":128,"children":129},"tr",{},[130,136,141],{"type":47,"tag":131,"props":132,"children":133},"th",{},[134],{"type":52,"value":135},"Step",{"type":47,"tag":131,"props":137,"children":138},{},[139],{"type":52,"value":140},"Tool",{"type":47,"tag":131,"props":142,"children":143},{},[144],{"type":52,"value":145},"Notes",{"type":47,"tag":147,"props":148,"children":149},"tbody",{},[150,172,222,244,272,298],{"type":47,"tag":127,"props":151,"children":152},{},[153,159,167],{"type":47,"tag":154,"props":155,"children":156},"td",{},[157],{"type":52,"value":158},"Upload source video",{"type":47,"tag":154,"props":160,"children":161},{},[162],{"type":47,"tag":76,"props":163,"children":165},{"className":164},[],[166],{"type":52,"value":81},{"type":47,"tag":154,"props":168,"children":169},{},[170],{"type":52,"value":171},"File picker; returns the CC asset ID required by Quick Cut",{"type":47,"tag":127,"props":173,"children":174},{},[175,185,202],{"type":47,"tag":154,"props":176,"children":177},{},[178,180],{"type":52,"value":179},"Stage source video ",{"type":47,"tag":100,"props":181,"children":182},{},[183],{"type":52,"value":184},"(no-widget fallback)",{"type":47,"tag":154,"props":186,"children":187},{},[188,194,196],{"type":47,"tag":76,"props":189,"children":191},{"className":190},[],[192],{"type":52,"value":193},"asset_initialize_file_upload",{"type":52,"value":195}," + ",{"type":47,"tag":76,"props":197,"children":199},{"className":198},[],[200],{"type":52,"value":201},"asset_finalize_file_upload",{"type":47,"tag":154,"props":203,"children":204},{},[205,207,212,214,220],{"type":52,"value":206},"Only when ",{"type":47,"tag":76,"props":208,"children":210},{"className":209},[],[211],{"type":52,"value":81},{"type":52,"value":213}," is unavailable — stage a local video to CC; extract ",{"type":47,"tag":76,"props":215,"children":217},{"className":216},[],[218],{"type":52,"value":219},"assetId",{"type":52,"value":221}," from the finalize response",{"type":47,"tag":127,"props":223,"children":224},{},[225,230,239],{"type":47,"tag":154,"props":226,"children":227},{},[228],{"type":52,"value":229},"Run Quick Cut variations",{"type":47,"tag":154,"props":231,"children":232},{},[233],{"type":47,"tag":76,"props":234,"children":236},{"className":235},[],[237],{"type":52,"value":238},"video_create_quick_cut",{"type":47,"tag":154,"props":240,"children":241},{},[242],{"type":52,"value":243},"Fire 3 in parallel; same duration and style prompt",{"type":47,"tag":127,"props":245,"children":246},{},[247,252,261],{"type":47,"tag":154,"props":248,"children":249},{},[250],{"type":52,"value":251},"Poll job status",{"type":47,"tag":154,"props":253,"children":254},{},[255],{"type":47,"tag":76,"props":256,"children":258},{"className":257},[],[259],{"type":52,"value":260},"quickCutPoll",{"type":47,"tag":154,"props":262,"children":263},{},[264,266],{"type":52,"value":265},"Repeat until all 3 return ",{"type":47,"tag":76,"props":267,"children":269},{"className":268},[],[270],{"type":52,"value":271},"completed",{"type":47,"tag":127,"props":273,"children":274},{},[275,280,288],{"type":47,"tag":154,"props":276,"children":277},{},[278],{"type":52,"value":279},"Preview variations",{"type":47,"tag":154,"props":281,"children":282},{},[283],{"type":47,"tag":76,"props":284,"children":286},{"className":285},[],[287],{"type":52,"value":89},{"type":47,"tag":154,"props":289,"children":290},{},[291,293],{"type":52,"value":292},"Renders all 3 side-by-side for selection ",{"type":47,"tag":100,"props":294,"children":295},{},[296],{"type":52,"value":297},"(no-widget fallback: present the 3 URLs directly)",{"type":47,"tag":127,"props":299,"children":300},{},[301,306,315],{"type":47,"tag":154,"props":302,"children":303},{},[304],{"type":52,"value":305},"Resize re-uploaded output",{"type":47,"tag":154,"props":307,"children":308},{},[309],{"type":47,"tag":76,"props":310,"children":312},{"className":311},[],[313],{"type":52,"value":314},"video_resize",{"type":47,"tag":154,"props":316,"children":317},{},[318],{"type":52,"value":319},"Workaround only — Quick Cut output must be re-uploaded first",{"type":47,"tag":108,"props":321,"children":322},{},[],{"type":47,"tag":112,"props":324,"children":326},{"id":325},"workflow",[327],{"type":52,"value":328},"Workflow",{"type":47,"tag":330,"props":331,"children":333},"h3",{"id":332},"step-0-initialize-adobe-tools",[334],{"type":52,"value":335},"Step 0 — Initialize Adobe Tools",{"type":47,"tag":55,"props":337,"children":338},{},[339,341,347],{"type":52,"value":340},"Call ",{"type":47,"tag":76,"props":342,"children":344},{"className":343},[],[345],{"type":52,"value":346},"adobe_mandatory_init",{"type":52,"value":348}," first. This returns file handling rules and tool routing guidance required for the rest of the workflow.",{"type":47,"tag":350,"props":351,"children":356},"pre",{"className":352,"code":353,"language":354,"meta":355,"style":355},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{ \"skill_name\": \"adobe-edit-quick-cut\", \"skill_version\": \"2.1.0\" }\n","json","",[357],{"type":47,"tag":76,"props":358,"children":359},{"__ignoreMap":355},[360],{"type":47,"tag":361,"props":362,"children":365},"span",{"class":363,"line":364},"line",1,[366,372,377,383,388,393,397,402,406,411,415,420,424,428,432,436,440],{"type":47,"tag":361,"props":367,"children":369},{"style":368},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[370],{"type":52,"value":371},"{",{"type":47,"tag":361,"props":373,"children":374},{"style":368},[375],{"type":52,"value":376}," \"",{"type":47,"tag":361,"props":378,"children":380},{"style":379},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[381],{"type":52,"value":382},"skill_name",{"type":47,"tag":361,"props":384,"children":385},{"style":368},[386],{"type":52,"value":387},"\"",{"type":47,"tag":361,"props":389,"children":390},{"style":368},[391],{"type":52,"value":392},":",{"type":47,"tag":361,"props":394,"children":395},{"style":368},[396],{"type":52,"value":376},{"type":47,"tag":361,"props":398,"children":400},{"style":399},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[401],{"type":52,"value":4},{"type":47,"tag":361,"props":403,"children":404},{"style":368},[405],{"type":52,"value":387},{"type":47,"tag":361,"props":407,"children":408},{"style":368},[409],{"type":52,"value":410},",",{"type":47,"tag":361,"props":412,"children":413},{"style":368},[414],{"type":52,"value":376},{"type":47,"tag":361,"props":416,"children":417},{"style":379},[418],{"type":52,"value":419},"skill_version",{"type":47,"tag":361,"props":421,"children":422},{"style":368},[423],{"type":52,"value":387},{"type":47,"tag":361,"props":425,"children":426},{"style":368},[427],{"type":52,"value":392},{"type":47,"tag":361,"props":429,"children":430},{"style":368},[431],{"type":52,"value":376},{"type":47,"tag":361,"props":433,"children":434},{"style":399},[435],{"type":52,"value":38},{"type":47,"tag":361,"props":437,"children":438},{"style":368},[439],{"type":52,"value":387},{"type":47,"tag":361,"props":441,"children":442},{"style":368},[443],{"type":52,"value":444}," }\n",{"type":47,"tag":108,"props":446,"children":447},{},[],{"type":47,"tag":330,"props":449,"children":451},{"id":450},"step-1-entitlement-check",[452],{"type":52,"value":453},"Step 1 — Entitlement Check",{"type":47,"tag":55,"props":455,"children":456},{},[457,459,464],{"type":52,"value":458},"Now that ",{"type":47,"tag":76,"props":460,"children":462},{"className":461},[],[463],{"type":52,"value":346},{"type":52,"value":465}," 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.",{"type":47,"tag":55,"props":467,"children":468},{},[469,471,476,478,483,485,489,491,497],{"type":52,"value":470},"This also tells you which widgets this surface supports: if ",{"type":47,"tag":76,"props":472,"children":474},{"className":473},[],[475],{"type":52,"value":81},{"type":52,"value":477}," and ",{"type":47,"tag":76,"props":479,"children":481},{"className":480},[],[482],{"type":52,"value":89},{"type":52,"value":484}," are available, follow the default flow (Steps 2 and 7 as written). If one is not available (e.g. Codex), use that step's ",{"type":47,"tag":100,"props":486,"children":487},{},[488],{"type":52,"value":104},{"type":52,"value":490},". If a tool result carries an ",{"type":47,"tag":76,"props":492,"children":494},{"className":493},[],[495],{"type":52,"value":496},"importantNote",{"type":52,"value":498},", or the connector injects \"Asset Storage & Display\" guidance for the current turn, follow it — it overrides the presentation defaults here.",{"type":47,"tag":108,"props":500,"children":501},{},[],{"type":47,"tag":330,"props":503,"children":505},{"id":504},"step-2-open-the-file-picker",[506],{"type":52,"value":507},"Step 2 — Open the File Picker",{"type":47,"tag":55,"props":509,"children":510},{},[511],{"type":52,"value":512},"Open the picker immediately with this message:",{"type":47,"tag":61,"props":514,"children":515},{},[516],{"type":47,"tag":55,"props":517,"children":518},{},[519],{"type":47,"tag":100,"props":520,"children":521},{},[522],{"type":52,"value":523},"\"Let's create a punchy sizzle reel from your video. Start by selecting your file:\"",{"type":47,"tag":350,"props":525,"children":529},{"className":526,"code":527,"language":528,"meta":355,"style":355},"language-javascript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","asset_add_file()\n","javascript",[530],{"type":47,"tag":76,"props":531,"children":532},{"__ignoreMap":355},[533],{"type":47,"tag":361,"props":534,"children":535},{"class":363,"line":364},[536,541],{"type":47,"tag":361,"props":537,"children":539},{"style":538},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[540],{"type":52,"value":81},{"type":47,"tag":361,"props":542,"children":544},{"style":543},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[545],{"type":52,"value":546},"()\n",{"type":47,"tag":55,"props":548,"children":549},{},[550,552,557],{"type":52,"value":551},"Once the user selects a file, extract ",{"type":47,"tag":76,"props":553,"children":555},{"className":554},[],[556],{"type":52,"value":219},{"type":52,"value":558}," (the CC asset ID) from the widget context.",{"type":47,"tag":61,"props":560,"children":561},{},[562],{"type":47,"tag":55,"props":563,"children":564},{},[565,570,572,577,579,585],{"type":47,"tag":76,"props":566,"children":568},{"className":567},[],[569],{"type":52,"value":238},{"type":52,"value":571}," requires a CC asset ID (",{"type":47,"tag":76,"props":573,"children":575},{"className":574},[],[576],{"type":52,"value":219},{"type":52,"value":578},"), not ",{"type":47,"tag":76,"props":580,"children":582},{"className":581},[],[583],{"type":52,"value":584},"presignedAssetUrl",{"type":52,"value":586},".",{"type":47,"tag":55,"props":588,"children":589},{},[590,594,596,608,610,615,617,622],{"type":47,"tag":68,"props":591,"children":592},{},[593],{"type":52,"value":104},{"type":52,"value":595}," ",{"type":47,"tag":100,"props":597,"children":598},{},[599,601,606],{"type":52,"value":600},"(only if ",{"type":47,"tag":76,"props":602,"children":604},{"className":603},[],[605],{"type":52,"value":81},{"type":52,"value":607}," is unavailable on this surface, e.g. Codex)",{"type":52,"value":609}," — don't ask the user to pick; get the ",{"type":47,"tag":76,"props":611,"children":613},{"className":612},[],[614],{"type":52,"value":219},{"type":52,"value":616}," from where the file is. Staging a local file requires egress — check egress status from ",{"type":47,"tag":76,"props":618,"children":620},{"className":619},[],[621],{"type":52,"value":346},{"type":52,"value":623}," first; if egress is disabled and no picker is available on this surface, tell the user staging isn't possible here. Otherwise:",{"type":47,"tag":119,"props":625,"children":626},{},[627,643],{"type":47,"tag":123,"props":628,"children":629},{},[630],{"type":47,"tag":127,"props":631,"children":632},{},[633,638],{"type":47,"tag":131,"props":634,"children":635},{},[636],{"type":52,"value":637},"Source",{"type":47,"tag":131,"props":639,"children":640},{},[641],{"type":52,"value":642},"Action",{"type":47,"tag":147,"props":644,"children":645},{},[646,697],{"type":47,"tag":127,"props":647,"children":648},{},[649,662],{"type":47,"tag":154,"props":650,"children":651},{},[652,654,660],{"type":52,"value":653},"File at a local path (e.g. ",{"type":47,"tag":76,"props":655,"children":657},{"className":656},[],[658],{"type":52,"value":659},"\u002Fmnt\u002Fuser-data\u002Fuploads\u002F…",{"type":52,"value":661},")",{"type":47,"tag":154,"props":663,"children":664},{},[665,667,673,675,681,683,688,690,695],{"type":52,"value":666},"Stage programmatically: get file size and MIME type, call ",{"type":47,"tag":76,"props":668,"children":670},{"className":669},[],[671],{"type":52,"value":672},"asset_initialize_file_upload({ path: \"\u003Cfilename>\", media_type: \"\u003Cmime>\" })",{"type":52,"value":674},", PUT the bytes to the returned upload URL, then ",{"type":47,"tag":76,"props":676,"children":678},{"className":677},[],[679],{"type":52,"value":680},"asset_finalize_file_upload({ filename: \"\u003Cfilename>\", transfer_document: \u003Cfrom initialize response> })",{"type":52,"value":682},". Extract the ",{"type":47,"tag":76,"props":684,"children":686},{"className":685},[],[687],{"type":52,"value":219},{"type":52,"value":689}," from the finalize response — this is what ",{"type":47,"tag":76,"props":691,"children":693},{"className":692},[],[694],{"type":52,"value":238},{"type":52,"value":696}," needs.",{"type":47,"tag":127,"props":698,"children":699},{},[700,705],{"type":47,"tag":154,"props":701,"children":702},{},[703],{"type":52,"value":704},"File already in Creative Cloud",{"type":47,"tag":154,"props":706,"children":707},{},[708,710,715],{"type":52,"value":709},"Reference it directly by its CC ",{"type":47,"tag":76,"props":711,"children":713},{"className":712},[],[714],{"type":52,"value":219},{"type":52,"value":586},{"type":47,"tag":108,"props":717,"children":718},{},[],{"type":47,"tag":330,"props":720,"children":722},{"id":721},"step-3-confirm-upload",[723],{"type":52,"value":724},"Step 3 — Confirm Upload",{"type":47,"tag":55,"props":726,"children":727},{},[728],{"type":52,"value":729},"Once the file is selected, confirm with:",{"type":47,"tag":61,"props":731,"children":732},{},[733],{"type":47,"tag":55,"props":734,"children":735},{},[736],{"type":47,"tag":100,"props":737,"children":738},{},[739,741,746],{"type":52,"value":740},"\"Got it — ",{"type":47,"tag":361,"props":742,"children":743},{},[744],{"type":52,"value":745},"filename",{"type":52,"value":747}," is ready. Now let's set up your cut.\"",{"type":47,"tag":55,"props":749,"children":750},{},[751],{"type":52,"value":752},"Then immediately present the Q&A form below.",{"type":47,"tag":108,"props":754,"children":755},{},[],{"type":47,"tag":330,"props":757,"children":759},{"id":758},"step-4-qa-form-via-askuserquestion",[760],{"type":52,"value":761},"Step 4 — Q&A Form (via AskUserQuestion)",{"type":47,"tag":55,"props":763,"children":764},{},[765,767,773],{"type":52,"value":766},"Wait for the user's answers before proceeding; present the questions via ",{"type":47,"tag":76,"props":768,"children":770},{"className":769},[],[771],{"type":52,"value":772},"AskUserQuestion",{"type":52,"value":774}," (not plain text) so the user gets tappable buttons.",{"type":47,"tag":61,"props":776,"children":777},{},[778],{"type":47,"tag":55,"props":779,"children":780},{},[781,785,786,797],{"type":47,"tag":68,"props":782,"children":783},{},[784],{"type":52,"value":104},{"type":52,"value":595},{"type":47,"tag":100,"props":787,"children":788},{},[789,790,795],{"type":52,"value":600},{"type":47,"tag":76,"props":791,"children":793},{"className":792},[],[794],{"type":52,"value":772},{"type":52,"value":796}," is unavailable, e.g. Codex)",{"type":52,"value":798}," — ask the same labeled options as a plain-text message and wait for the user's typed reply. The option set is identical.",{"type":47,"tag":350,"props":800,"children":802},{"className":526,"code":801,"language":528,"meta":355,"style":355},"AskUserQuestion({\n  questions: [\n    {\n      header: \"Cut Length\",\n      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)\",\n      multiSelect: false,\n      options: [\n        { label: \"Short Cut — Social First \u002F Reels & TikTok (~15s, high energy, highlights)\" },\n        { label: \"Medium Cut — Engaging Storytelling (~30–60s, context, flow, balanced)\" },\n        { label: \"Long Cut — Full Sizzle (~90s, comprehensive, showcase, documentary)\" }\n      ]\n    },\n    {\n      header: \"Style \u002F Vibe\",\n      question: \"What style or vibe would you like?\",\n      multiSelect: false,\n      options: [\n        { label: \"Action & Energy\" },\n        { label: \"Key Talking Moments\" },\n        { label: \"Cinematic & Dramatic\" },\n        { label: \"No Preference\" }\n      ]\n    }\n  ]\n})\n",[803],{"type":47,"tag":76,"props":804,"children":805},{"__ignoreMap":355},[806,823,842,851,882,912,935,952,988,1021,1054,1063,1072,1080,1109,1138,1158,1174,1207,1240,1273,1306,1314,1323,1332],{"type":47,"tag":361,"props":807,"children":808},{"class":363,"line":364},[809,813,818],{"type":47,"tag":361,"props":810,"children":811},{"style":538},[812],{"type":52,"value":772},{"type":47,"tag":361,"props":814,"children":815},{"style":543},[816],{"type":52,"value":817},"(",{"type":47,"tag":361,"props":819,"children":820},{"style":368},[821],{"type":52,"value":822},"{\n",{"type":47,"tag":361,"props":824,"children":826},{"class":363,"line":825},2,[827,833,837],{"type":47,"tag":361,"props":828,"children":830},{"style":829},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[831],{"type":52,"value":832},"  questions",{"type":47,"tag":361,"props":834,"children":835},{"style":368},[836],{"type":52,"value":392},{"type":47,"tag":361,"props":838,"children":839},{"style":543},[840],{"type":52,"value":841}," [\n",{"type":47,"tag":361,"props":843,"children":845},{"class":363,"line":844},3,[846],{"type":47,"tag":361,"props":847,"children":848},{"style":368},[849],{"type":52,"value":850},"    {\n",{"type":47,"tag":361,"props":852,"children":854},{"class":363,"line":853},4,[855,860,864,868,873,877],{"type":47,"tag":361,"props":856,"children":857},{"style":829},[858],{"type":52,"value":859},"      header",{"type":47,"tag":361,"props":861,"children":862},{"style":368},[863],{"type":52,"value":392},{"type":47,"tag":361,"props":865,"children":866},{"style":368},[867],{"type":52,"value":376},{"type":47,"tag":361,"props":869,"children":870},{"style":399},[871],{"type":52,"value":872},"Cut Length",{"type":47,"tag":361,"props":874,"children":875},{"style":368},[876],{"type":52,"value":387},{"type":47,"tag":361,"props":878,"children":879},{"style":368},[880],{"type":52,"value":881},",\n",{"type":47,"tag":361,"props":883,"children":885},{"class":363,"line":884},5,[886,891,895,899,904,908],{"type":47,"tag":361,"props":887,"children":888},{"style":829},[889],{"type":52,"value":890},"      question",{"type":47,"tag":361,"props":892,"children":893},{"style":368},[894],{"type":52,"value":392},{"type":47,"tag":361,"props":896,"children":897},{"style":368},[898],{"type":52,"value":376},{"type":47,"tag":361,"props":900,"children":901},{"style":399},[902],{"type":52,"value":903},"What kind of cut would you like? (target_duration is a strong hint, not a guarantee — pair with a strong vibe for best results)",{"type":47,"tag":361,"props":905,"children":906},{"style":368},[907],{"type":52,"value":387},{"type":47,"tag":361,"props":909,"children":910},{"style":368},[911],{"type":52,"value":881},{"type":47,"tag":361,"props":913,"children":915},{"class":363,"line":914},6,[916,921,925,931],{"type":47,"tag":361,"props":917,"children":918},{"style":829},[919],{"type":52,"value":920},"      multiSelect",{"type":47,"tag":361,"props":922,"children":923},{"style":368},[924],{"type":52,"value":392},{"type":47,"tag":361,"props":926,"children":928},{"style":927},"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC",[929],{"type":52,"value":930}," false",{"type":47,"tag":361,"props":932,"children":933},{"style":368},[934],{"type":52,"value":881},{"type":47,"tag":361,"props":936,"children":938},{"class":363,"line":937},7,[939,944,948],{"type":47,"tag":361,"props":940,"children":941},{"style":829},[942],{"type":52,"value":943},"      options",{"type":47,"tag":361,"props":945,"children":946},{"style":368},[947],{"type":52,"value":392},{"type":47,"tag":361,"props":949,"children":950},{"style":543},[951],{"type":52,"value":841},{"type":47,"tag":361,"props":953,"children":955},{"class":363,"line":954},8,[956,961,966,970,974,979,983],{"type":47,"tag":361,"props":957,"children":958},{"style":368},[959],{"type":52,"value":960},"        {",{"type":47,"tag":361,"props":962,"children":963},{"style":829},[964],{"type":52,"value":965}," label",{"type":47,"tag":361,"props":967,"children":968},{"style":368},[969],{"type":52,"value":392},{"type":47,"tag":361,"props":971,"children":972},{"style":368},[973],{"type":52,"value":376},{"type":47,"tag":361,"props":975,"children":976},{"style":399},[977],{"type":52,"value":978},"Short Cut — Social First \u002F Reels & TikTok (~15s, high energy, highlights)",{"type":47,"tag":361,"props":980,"children":981},{"style":368},[982],{"type":52,"value":387},{"type":47,"tag":361,"props":984,"children":985},{"style":368},[986],{"type":52,"value":987}," },\n",{"type":47,"tag":361,"props":989,"children":991},{"class":363,"line":990},9,[992,996,1000,1004,1008,1013,1017],{"type":47,"tag":361,"props":993,"children":994},{"style":368},[995],{"type":52,"value":960},{"type":47,"tag":361,"props":997,"children":998},{"style":829},[999],{"type":52,"value":965},{"type":47,"tag":361,"props":1001,"children":1002},{"style":368},[1003],{"type":52,"value":392},{"type":47,"tag":361,"props":1005,"children":1006},{"style":368},[1007],{"type":52,"value":376},{"type":47,"tag":361,"props":1009,"children":1010},{"style":399},[1011],{"type":52,"value":1012},"Medium Cut — Engaging Storytelling (~30–60s, context, flow, balanced)",{"type":47,"tag":361,"props":1014,"children":1015},{"style":368},[1016],{"type":52,"value":387},{"type":47,"tag":361,"props":1018,"children":1019},{"style":368},[1020],{"type":52,"value":987},{"type":47,"tag":361,"props":1022,"children":1024},{"class":363,"line":1023},10,[1025,1029,1033,1037,1041,1046,1050],{"type":47,"tag":361,"props":1026,"children":1027},{"style":368},[1028],{"type":52,"value":960},{"type":47,"tag":361,"props":1030,"children":1031},{"style":829},[1032],{"type":52,"value":965},{"type":47,"tag":361,"props":1034,"children":1035},{"style":368},[1036],{"type":52,"value":392},{"type":47,"tag":361,"props":1038,"children":1039},{"style":368},[1040],{"type":52,"value":376},{"type":47,"tag":361,"props":1042,"children":1043},{"style":399},[1044],{"type":52,"value":1045},"Long Cut — Full Sizzle (~90s, comprehensive, showcase, documentary)",{"type":47,"tag":361,"props":1047,"children":1048},{"style":368},[1049],{"type":52,"value":387},{"type":47,"tag":361,"props":1051,"children":1052},{"style":368},[1053],{"type":52,"value":444},{"type":47,"tag":361,"props":1055,"children":1057},{"class":363,"line":1056},11,[1058],{"type":47,"tag":361,"props":1059,"children":1060},{"style":543},[1061],{"type":52,"value":1062},"      ]\n",{"type":47,"tag":361,"props":1064,"children":1066},{"class":363,"line":1065},12,[1067],{"type":47,"tag":361,"props":1068,"children":1069},{"style":368},[1070],{"type":52,"value":1071},"    },\n",{"type":47,"tag":361,"props":1073,"children":1075},{"class":363,"line":1074},13,[1076],{"type":47,"tag":361,"props":1077,"children":1078},{"style":368},[1079],{"type":52,"value":850},{"type":47,"tag":361,"props":1081,"children":1083},{"class":363,"line":1082},14,[1084,1088,1092,1096,1101,1105],{"type":47,"tag":361,"props":1085,"children":1086},{"style":829},[1087],{"type":52,"value":859},{"type":47,"tag":361,"props":1089,"children":1090},{"style":368},[1091],{"type":52,"value":392},{"type":47,"tag":361,"props":1093,"children":1094},{"style":368},[1095],{"type":52,"value":376},{"type":47,"tag":361,"props":1097,"children":1098},{"style":399},[1099],{"type":52,"value":1100},"Style \u002F Vibe",{"type":47,"tag":361,"props":1102,"children":1103},{"style":368},[1104],{"type":52,"value":387},{"type":47,"tag":361,"props":1106,"children":1107},{"style":368},[1108],{"type":52,"value":881},{"type":47,"tag":361,"props":1110,"children":1112},{"class":363,"line":1111},15,[1113,1117,1121,1125,1130,1134],{"type":47,"tag":361,"props":1114,"children":1115},{"style":829},[1116],{"type":52,"value":890},{"type":47,"tag":361,"props":1118,"children":1119},{"style":368},[1120],{"type":52,"value":392},{"type":47,"tag":361,"props":1122,"children":1123},{"style":368},[1124],{"type":52,"value":376},{"type":47,"tag":361,"props":1126,"children":1127},{"style":399},[1128],{"type":52,"value":1129},"What style or vibe would you like?",{"type":47,"tag":361,"props":1131,"children":1132},{"style":368},[1133],{"type":52,"value":387},{"type":47,"tag":361,"props":1135,"children":1136},{"style":368},[1137],{"type":52,"value":881},{"type":47,"tag":361,"props":1139,"children":1141},{"class":363,"line":1140},16,[1142,1146,1150,1154],{"type":47,"tag":361,"props":1143,"children":1144},{"style":829},[1145],{"type":52,"value":920},{"type":47,"tag":361,"props":1147,"children":1148},{"style":368},[1149],{"type":52,"value":392},{"type":47,"tag":361,"props":1151,"children":1152},{"style":927},[1153],{"type":52,"value":930},{"type":47,"tag":361,"props":1155,"children":1156},{"style":368},[1157],{"type":52,"value":881},{"type":47,"tag":361,"props":1159,"children":1161},{"class":363,"line":1160},17,[1162,1166,1170],{"type":47,"tag":361,"props":1163,"children":1164},{"style":829},[1165],{"type":52,"value":943},{"type":47,"tag":361,"props":1167,"children":1168},{"style":368},[1169],{"type":52,"value":392},{"type":47,"tag":361,"props":1171,"children":1172},{"style":543},[1173],{"type":52,"value":841},{"type":47,"tag":361,"props":1175,"children":1177},{"class":363,"line":1176},18,[1178,1182,1186,1190,1194,1199,1203],{"type":47,"tag":361,"props":1179,"children":1180},{"style":368},[1181],{"type":52,"value":960},{"type":47,"tag":361,"props":1183,"children":1184},{"style":829},[1185],{"type":52,"value":965},{"type":47,"tag":361,"props":1187,"children":1188},{"style":368},[1189],{"type":52,"value":392},{"type":47,"tag":361,"props":1191,"children":1192},{"style":368},[1193],{"type":52,"value":376},{"type":47,"tag":361,"props":1195,"children":1196},{"style":399},[1197],{"type":52,"value":1198},"Action & Energy",{"type":47,"tag":361,"props":1200,"children":1201},{"style":368},[1202],{"type":52,"value":387},{"type":47,"tag":361,"props":1204,"children":1205},{"style":368},[1206],{"type":52,"value":987},{"type":47,"tag":361,"props":1208,"children":1210},{"class":363,"line":1209},19,[1211,1215,1219,1223,1227,1232,1236],{"type":47,"tag":361,"props":1212,"children":1213},{"style":368},[1214],{"type":52,"value":960},{"type":47,"tag":361,"props":1216,"children":1217},{"style":829},[1218],{"type":52,"value":965},{"type":47,"tag":361,"props":1220,"children":1221},{"style":368},[1222],{"type":52,"value":392},{"type":47,"tag":361,"props":1224,"children":1225},{"style":368},[1226],{"type":52,"value":376},{"type":47,"tag":361,"props":1228,"children":1229},{"style":399},[1230],{"type":52,"value":1231},"Key Talking Moments",{"type":47,"tag":361,"props":1233,"children":1234},{"style":368},[1235],{"type":52,"value":387},{"type":47,"tag":361,"props":1237,"children":1238},{"style":368},[1239],{"type":52,"value":987},{"type":47,"tag":361,"props":1241,"children":1243},{"class":363,"line":1242},20,[1244,1248,1252,1256,1260,1265,1269],{"type":47,"tag":361,"props":1245,"children":1246},{"style":368},[1247],{"type":52,"value":960},{"type":47,"tag":361,"props":1249,"children":1250},{"style":829},[1251],{"type":52,"value":965},{"type":47,"tag":361,"props":1253,"children":1254},{"style":368},[1255],{"type":52,"value":392},{"type":47,"tag":361,"props":1257,"children":1258},{"style":368},[1259],{"type":52,"value":376},{"type":47,"tag":361,"props":1261,"children":1262},{"style":399},[1263],{"type":52,"value":1264},"Cinematic & Dramatic",{"type":47,"tag":361,"props":1266,"children":1267},{"style":368},[1268],{"type":52,"value":387},{"type":47,"tag":361,"props":1270,"children":1271},{"style":368},[1272],{"type":52,"value":987},{"type":47,"tag":361,"props":1274,"children":1276},{"class":363,"line":1275},21,[1277,1281,1285,1289,1293,1298,1302],{"type":47,"tag":361,"props":1278,"children":1279},{"style":368},[1280],{"type":52,"value":960},{"type":47,"tag":361,"props":1282,"children":1283},{"style":829},[1284],{"type":52,"value":965},{"type":47,"tag":361,"props":1286,"children":1287},{"style":368},[1288],{"type":52,"value":392},{"type":47,"tag":361,"props":1290,"children":1291},{"style":368},[1292],{"type":52,"value":376},{"type":47,"tag":361,"props":1294,"children":1295},{"style":399},[1296],{"type":52,"value":1297},"No Preference",{"type":47,"tag":361,"props":1299,"children":1300},{"style":368},[1301],{"type":52,"value":387},{"type":47,"tag":361,"props":1303,"children":1304},{"style":368},[1305],{"type":52,"value":444},{"type":47,"tag":361,"props":1307,"children":1309},{"class":363,"line":1308},22,[1310],{"type":47,"tag":361,"props":1311,"children":1312},{"style":543},[1313],{"type":52,"value":1062},{"type":47,"tag":361,"props":1315,"children":1317},{"class":363,"line":1316},23,[1318],{"type":47,"tag":361,"props":1319,"children":1320},{"style":368},[1321],{"type":52,"value":1322},"    }\n",{"type":47,"tag":361,"props":1324,"children":1326},{"class":363,"line":1325},24,[1327],{"type":47,"tag":361,"props":1328,"children":1329},{"style":543},[1330],{"type":52,"value":1331},"  ]\n",{"type":47,"tag":361,"props":1333,"children":1335},{"class":363,"line":1334},25,[1336,1341],{"type":47,"tag":361,"props":1337,"children":1338},{"style":368},[1339],{"type":52,"value":1340},"}",{"type":47,"tag":361,"props":1342,"children":1343},{"style":543},[1344],{"type":52,"value":1345},")\n",{"type":47,"tag":55,"props":1347,"children":1348},{},[1349],{"type":52,"value":1350},"Wait for the user's selections before proceeding to Step 5.",{"type":47,"tag":108,"props":1352,"children":1353},{},[],{"type":47,"tag":330,"props":1355,"children":1357},{"id":1356},"step-5-acknowledge-and-run",[1358],{"type":52,"value":1359},"Step 5 — Acknowledge and Run",{"type":47,"tag":55,"props":1361,"children":1362},{},[1363],{"type":52,"value":1364},"Once the user answers, respond with:",{"type":47,"tag":61,"props":1366,"children":1367},{},[1368],{"type":47,"tag":55,"props":1369,"children":1370},{},[1371],{"type":47,"tag":100,"props":1372,"children":1373},{},[1374,1375,1380,1382,1387],{"type":52,"value":740},{"type":47,"tag":361,"props":1376,"children":1377},{},[1378],{"type":52,"value":1379},"cut type",{"type":52,"value":1381},", ",{"type":47,"tag":361,"props":1383,"children":1384},{},[1385],{"type":52,"value":1386},"style",{"type":52,"value":1388}," vibe. Creating 3 variations at that length — let me preview them for you.\"",{"type":47,"tag":55,"props":1390,"children":1391},{},[1392],{"type":52,"value":1393},"Map their answers to parameters:",{"type":47,"tag":55,"props":1395,"children":1396},{},[1397],{"type":47,"tag":68,"props":1398,"children":1399},{},[1400],{"type":52,"value":1401},"Q1 duration map:",{"type":47,"tag":119,"props":1403,"children":1404},{},[1405,1421],{"type":47,"tag":123,"props":1406,"children":1407},{},[1408],{"type":47,"tag":127,"props":1409,"children":1410},{},[1411,1416],{"type":47,"tag":131,"props":1412,"children":1413},{},[1414],{"type":52,"value":1415},"Answer",{"type":47,"tag":131,"props":1417,"children":1418},{},[1419],{"type":52,"value":1420},"target_duration",{"type":47,"tag":147,"props":1422,"children":1423},{},[1424,1437,1450],{"type":47,"tag":127,"props":1425,"children":1426},{},[1427,1432],{"type":47,"tag":154,"props":1428,"children":1429},{},[1430],{"type":52,"value":1431},"1. Short Cut — Social First \u002F Reels & TikTok (~15s)",{"type":47,"tag":154,"props":1433,"children":1434},{},[1435],{"type":52,"value":1436},"15",{"type":47,"tag":127,"props":1438,"children":1439},{},[1440,1445],{"type":47,"tag":154,"props":1441,"children":1442},{},[1443],{"type":52,"value":1444},"2. Medium Cut — Engaging Storytelling (~30–60s)",{"type":47,"tag":154,"props":1446,"children":1447},{},[1448],{"type":52,"value":1449},"45",{"type":47,"tag":127,"props":1451,"children":1452},{},[1453,1458],{"type":47,"tag":154,"props":1454,"children":1455},{},[1456],{"type":52,"value":1457},"3. Long Cut — Full Sizzle (~90s)",{"type":47,"tag":154,"props":1459,"children":1460},{},[1461],{"type":52,"value":1462},"90",{"type":47,"tag":55,"props":1464,"children":1465},{},[1466],{"type":47,"tag":68,"props":1467,"children":1468},{},[1469],{"type":52,"value":1470},"Q2 style map:",{"type":47,"tag":61,"props":1472,"children":1473},{},[1474],{"type":47,"tag":55,"props":1475,"children":1476},{},[1477,1479,1485,1487,1492],{"type":52,"value":1478},"⚠️ The ",{"type":47,"tag":76,"props":1480,"children":1482},{"className":1481},[],[1483],{"type":52,"value":1484},"user_prompt",{"type":52,"value":1486}," is the primary lever for output quality — it does more work than\n",{"type":47,"tag":76,"props":1488,"children":1490},{"className":1489},[],[1491],{"type":52,"value":1420},{"type":52,"value":1493},". Pass the prompts below verbatim — abbreviating them weakens the output.\nThe energy language in the prompt reinforces the intended duration feel and moment selection.",{"type":47,"tag":119,"props":1495,"children":1496},{},[1497,1511],{"type":47,"tag":123,"props":1498,"children":1499},{},[1500],{"type":47,"tag":127,"props":1501,"children":1502},{},[1503,1507],{"type":47,"tag":131,"props":1504,"children":1505},{},[1506],{"type":52,"value":1415},{"type":47,"tag":131,"props":1508,"children":1509},{},[1510],{"type":52,"value":1484},{"type":47,"tag":147,"props":1512,"children":1513},{},[1514,1531,1548,1565],{"type":47,"tag":127,"props":1515,"children":1516},{},[1517,1522],{"type":47,"tag":154,"props":1518,"children":1519},{},[1520],{"type":52,"value":1521},"1. Action & Energy",{"type":47,"tag":154,"props":1523,"children":1524},{},[1525],{"type":47,"tag":76,"props":1526,"children":1528},{"className":1527},[],[1529],{"type":52,"value":1530},"\"Fast, punchy, hype, high energy. Hit hard and fast. Quick cuts, peak moments only, adrenaline rush from start to finish. No slow moments, no breathing room. Pure intensity.\"",{"type":47,"tag":127,"props":1532,"children":1533},{},[1534,1539],{"type":47,"tag":154,"props":1535,"children":1536},{},[1537],{"type":52,"value":1538},"2. Key Talking Moments",{"type":47,"tag":154,"props":1540,"children":1541},{},[1542],{"type":47,"tag":76,"props":1543,"children":1545},{"className":1544},[],[1546],{"type":52,"value":1547},"\"Polished, commercial, confident. Smooth pacing with deliberate rhythm. Each moment feels intentional and curated. Moderate energy — impressive but controlled. Professional and refined.\"",{"type":47,"tag":127,"props":1549,"children":1550},{},[1551,1556],{"type":47,"tag":154,"props":1552,"children":1553},{},[1554],{"type":52,"value":1555},"3. Cinematic & Dramatic",{"type":47,"tag":154,"props":1557,"children":1558},{},[1559],{"type":47,"tag":76,"props":1560,"children":1562},{"className":1561},[],[1563],{"type":52,"value":1564},"\"Documentary, cinematic, immersive. Let moments breathe and unfold naturally. Build a story arc with texture and depth. Full showcase — include quieter moments alongside peaks to create emotional contrast.\"",{"type":47,"tag":127,"props":1566,"children":1567},{},[1568,1573],{"type":47,"tag":154,"props":1569,"children":1570},{},[1571],{"type":52,"value":1572},"4. No Preference",{"type":47,"tag":154,"props":1574,"children":1575},{},[1576],{"type":47,"tag":76,"props":1577,"children":1579},{"className":1578},[],[1580],{"type":52,"value":1581},"\"Create the most engaging highlight reel from the best moments in the video. Balance energy and pacing naturally.\"",{"type":47,"tag":55,"props":1583,"children":1584},{},[1585,1587,1592],{"type":52,"value":1586},"Fire all 3 Quick Cut jobs ",{"type":47,"tag":68,"props":1588,"children":1589},{},[1590],{"type":52,"value":1591},"simultaneously",{"type":52,"value":1593}," — same duration, same style prompt. The AI will\nnaturally select different moments on each run, giving the user 3 genuine options to pick from:",{"type":47,"tag":350,"props":1595,"children":1597},{"className":526,"code":1596,"language":528,"meta":355,"style":355},"\u002F\u002F Variation A\nvideo_create_quick_cut({\n  assetIds: [assetId],\n  target_duration: \u003Cmapped_seconds>,\n  user_prompt: \"\u003Cmapped style prompt>\"\n}) \u002F\u002F → statusId_A\n\n\u002F\u002F Variation B\nvideo_create_quick_cut({\n  assetIds: [assetId],\n  target_duration: \u003Cmapped_seconds>,\n  user_prompt: \"\u003Cmapped style prompt>\"\n}) \u002F\u002F → statusId_B\n\n\u002F\u002F Variation C\nvideo_create_quick_cut({\n  assetIds: [assetId],\n  target_duration: \u003Cmapped_seconds>,\n  user_prompt: \"\u003Cmapped style prompt>\"\n}) \u002F\u002F → statusId_C\n",[1598],{"type":47,"tag":76,"props":1599,"children":1600},{"__ignoreMap":355},[1601,1610,1625,1646,1678,1715,1723,1732,1740,1752,1764,1788,1819,1827,1834,1842,1853,1864,1887,1918],{"type":47,"tag":361,"props":1602,"children":1603},{"class":363,"line":364},[1604],{"type":47,"tag":361,"props":1605,"children":1607},{"style":1606},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[1608],{"type":52,"value":1609},"\u002F\u002F Variation A\n",{"type":47,"tag":361,"props":1611,"children":1612},{"class":363,"line":825},[1613,1617,1621],{"type":47,"tag":361,"props":1614,"children":1615},{"style":538},[1616],{"type":52,"value":238},{"type":47,"tag":361,"props":1618,"children":1619},{"style":543},[1620],{"type":52,"value":817},{"type":47,"tag":361,"props":1622,"children":1623},{"style":368},[1624],{"type":52,"value":822},{"type":47,"tag":361,"props":1626,"children":1627},{"class":363,"line":844},[1628,1633,1637,1642],{"type":47,"tag":361,"props":1629,"children":1630},{"style":829},[1631],{"type":52,"value":1632},"  assetIds",{"type":47,"tag":361,"props":1634,"children":1635},{"style":368},[1636],{"type":52,"value":392},{"type":47,"tag":361,"props":1638,"children":1639},{"style":543},[1640],{"type":52,"value":1641}," [assetId]",{"type":47,"tag":361,"props":1643,"children":1644},{"style":368},[1645],{"type":52,"value":881},{"type":47,"tag":361,"props":1647,"children":1648},{"class":363,"line":853},[1649,1654,1658,1663,1669,1674],{"type":47,"tag":361,"props":1650,"children":1651},{"style":829},[1652],{"type":52,"value":1653},"  target_duration",{"type":47,"tag":361,"props":1655,"children":1656},{"style":368},[1657],{"type":52,"value":392},{"type":47,"tag":361,"props":1659,"children":1660},{"style":368},[1661],{"type":52,"value":1662}," \u003C",{"type":47,"tag":361,"props":1664,"children":1666},{"style":1665},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[1667],{"type":52,"value":1668},"mapped_seconds",{"type":47,"tag":361,"props":1670,"children":1671},{"style":368},[1672],{"type":52,"value":1673},">",{"type":47,"tag":361,"props":1675,"children":1676},{"style":543},[1677],{"type":52,"value":881},{"type":47,"tag":361,"props":1679,"children":1680},{"class":363,"line":884},[1681,1686,1691,1696,1701,1706,1710],{"type":47,"tag":361,"props":1682,"children":1683},{"style":543},[1684],{"type":52,"value":1685},"  user_prompt: \"",{"type":47,"tag":361,"props":1687,"children":1688},{"style":368},[1689],{"type":52,"value":1690},"\u003C",{"type":47,"tag":361,"props":1692,"children":1693},{"style":829},[1694],{"type":52,"value":1695},"mapped",{"type":47,"tag":361,"props":1697,"children":1698},{"style":379},[1699],{"type":52,"value":1700}," style",{"type":47,"tag":361,"props":1702,"children":1703},{"style":379},[1704],{"type":52,"value":1705}," prompt",{"type":47,"tag":361,"props":1707,"children":1708},{"style":368},[1709],{"type":52,"value":1673},{"type":47,"tag":361,"props":1711,"children":1712},{"style":543},[1713],{"type":52,"value":1714},"\"\n",{"type":47,"tag":361,"props":1716,"children":1717},{"class":363,"line":914},[1718],{"type":47,"tag":361,"props":1719,"children":1720},{"style":543},[1721],{"type":52,"value":1722},"}) \u002F\u002F → statusId_A\n",{"type":47,"tag":361,"props":1724,"children":1725},{"class":363,"line":937},[1726],{"type":47,"tag":361,"props":1727,"children":1729},{"emptyLinePlaceholder":1728},true,[1730],{"type":52,"value":1731},"\n",{"type":47,"tag":361,"props":1733,"children":1734},{"class":363,"line":954},[1735],{"type":47,"tag":361,"props":1736,"children":1737},{"style":543},[1738],{"type":52,"value":1739},"\u002F\u002F Variation B\n",{"type":47,"tag":361,"props":1741,"children":1742},{"class":363,"line":990},[1743,1748],{"type":47,"tag":361,"props":1744,"children":1745},{"style":543},[1746],{"type":52,"value":1747},"video_create_quick_cut(",{"type":47,"tag":361,"props":1749,"children":1750},{"style":368},[1751],{"type":52,"value":822},{"type":47,"tag":361,"props":1753,"children":1754},{"class":363,"line":1023},[1755,1760],{"type":47,"tag":361,"props":1756,"children":1757},{"style":543},[1758],{"type":52,"value":1759},"  assetIds: [assetId]",{"type":47,"tag":361,"props":1761,"children":1762},{"style":368},[1763],{"type":52,"value":881},{"type":47,"tag":361,"props":1765,"children":1766},{"class":363,"line":1056},[1767,1772,1776,1780,1784],{"type":47,"tag":361,"props":1768,"children":1769},{"style":543},[1770],{"type":52,"value":1771},"  target_duration: ",{"type":47,"tag":361,"props":1773,"children":1774},{"style":368},[1775],{"type":52,"value":1690},{"type":47,"tag":361,"props":1777,"children":1778},{"style":1665},[1779],{"type":52,"value":1668},{"type":47,"tag":361,"props":1781,"children":1782},{"style":368},[1783],{"type":52,"value":1673},{"type":47,"tag":361,"props":1785,"children":1786},{"style":543},[1787],{"type":52,"value":881},{"type":47,"tag":361,"props":1789,"children":1790},{"class":363,"line":1065},[1791,1795,1799,1803,1807,1811,1815],{"type":47,"tag":361,"props":1792,"children":1793},{"style":543},[1794],{"type":52,"value":1685},{"type":47,"tag":361,"props":1796,"children":1797},{"style":368},[1798],{"type":52,"value":1690},{"type":47,"tag":361,"props":1800,"children":1801},{"style":829},[1802],{"type":52,"value":1695},{"type":47,"tag":361,"props":1804,"children":1805},{"style":379},[1806],{"type":52,"value":1700},{"type":47,"tag":361,"props":1808,"children":1809},{"style":379},[1810],{"type":52,"value":1705},{"type":47,"tag":361,"props":1812,"children":1813},{"style":368},[1814],{"type":52,"value":1673},{"type":47,"tag":361,"props":1816,"children":1817},{"style":543},[1818],{"type":52,"value":1714},{"type":47,"tag":361,"props":1820,"children":1821},{"class":363,"line":1074},[1822],{"type":47,"tag":361,"props":1823,"children":1824},{"style":543},[1825],{"type":52,"value":1826},"}) \u002F\u002F → statusId_B\n",{"type":47,"tag":361,"props":1828,"children":1829},{"class":363,"line":1082},[1830],{"type":47,"tag":361,"props":1831,"children":1832},{"emptyLinePlaceholder":1728},[1833],{"type":52,"value":1731},{"type":47,"tag":361,"props":1835,"children":1836},{"class":363,"line":1111},[1837],{"type":47,"tag":361,"props":1838,"children":1839},{"style":543},[1840],{"type":52,"value":1841},"\u002F\u002F Variation C\n",{"type":47,"tag":361,"props":1843,"children":1844},{"class":363,"line":1140},[1845,1849],{"type":47,"tag":361,"props":1846,"children":1847},{"style":543},[1848],{"type":52,"value":1747},{"type":47,"tag":361,"props":1850,"children":1851},{"style":368},[1852],{"type":52,"value":822},{"type":47,"tag":361,"props":1854,"children":1855},{"class":363,"line":1160},[1856,1860],{"type":47,"tag":361,"props":1857,"children":1858},{"style":543},[1859],{"type":52,"value":1759},{"type":47,"tag":361,"props":1861,"children":1862},{"style":368},[1863],{"type":52,"value":881},{"type":47,"tag":361,"props":1865,"children":1866},{"class":363,"line":1176},[1867,1871,1875,1879,1883],{"type":47,"tag":361,"props":1868,"children":1869},{"style":543},[1870],{"type":52,"value":1771},{"type":47,"tag":361,"props":1872,"children":1873},{"style":368},[1874],{"type":52,"value":1690},{"type":47,"tag":361,"props":1876,"children":1877},{"style":1665},[1878],{"type":52,"value":1668},{"type":47,"tag":361,"props":1880,"children":1881},{"style":368},[1882],{"type":52,"value":1673},{"type":47,"tag":361,"props":1884,"children":1885},{"style":543},[1886],{"type":52,"value":881},{"type":47,"tag":361,"props":1888,"children":1889},{"class":363,"line":1209},[1890,1894,1898,1902,1906,1910,1914],{"type":47,"tag":361,"props":1891,"children":1892},{"style":543},[1893],{"type":52,"value":1685},{"type":47,"tag":361,"props":1895,"children":1896},{"style":368},[1897],{"type":52,"value":1690},{"type":47,"tag":361,"props":1899,"children":1900},{"style":829},[1901],{"type":52,"value":1695},{"type":47,"tag":361,"props":1903,"children":1904},{"style":379},[1905],{"type":52,"value":1700},{"type":47,"tag":361,"props":1907,"children":1908},{"style":379},[1909],{"type":52,"value":1705},{"type":47,"tag":361,"props":1911,"children":1912},{"style":368},[1913],{"type":52,"value":1673},{"type":47,"tag":361,"props":1915,"children":1916},{"style":543},[1917],{"type":52,"value":1714},{"type":47,"tag":361,"props":1919,"children":1920},{"class":363,"line":1242},[1921],{"type":47,"tag":361,"props":1922,"children":1923},{"style":543},[1924],{"type":52,"value":1925},"}) \u002F\u002F → statusId_C\n",{"type":47,"tag":108,"props":1927,"children":1928},{},[],{"type":47,"tag":330,"props":1930,"children":1932},{"id":1931},"step-6-poll-until-all-3-complete",[1933],{"type":52,"value":1934},"Step 6 — Poll Until All 3 Complete",{"type":47,"tag":55,"props":1936,"children":1937},{},[1938,1940,1946,1948,1954],{"type":52,"value":1939},"Poll all 3 in each round using ",{"type":47,"tag":76,"props":1941,"children":1943},{"className":1942},[],[1944],{"type":52,"value":1945},"quickCutPoll(statusId)",{"type":52,"value":1947},". Show progress % after each round.\nRepeat until all 3 return ",{"type":47,"tag":76,"props":1949,"children":1951},{"className":1950},[],[1952],{"type":52,"value":1953},"jobStatus: \"completed\"",{"type":52,"value":586},{"type":47,"tag":55,"props":1956,"children":1957},{},[1958],{"type":52,"value":1959},"Typical pattern: 0% → 7% → 78% → done. Usually 3–5 poll rounds.",{"type":47,"tag":55,"props":1961,"children":1962},{},[1963],{"type":52,"value":1964},"Store:",{"type":47,"tag":1966,"props":1967,"children":1968},"ul",{},[1969,1981,1992],{"type":47,"tag":1970,"props":1971,"children":1972},"li",{},[1973,1979],{"type":47,"tag":76,"props":1974,"children":1976},{"className":1975},[],[1977],{"type":52,"value":1978},"url_A",{"type":52,"value":1980}," — Variation A presignedAssetUrl",{"type":47,"tag":1970,"props":1982,"children":1983},{},[1984,1990],{"type":47,"tag":76,"props":1985,"children":1987},{"className":1986},[],[1988],{"type":52,"value":1989},"url_B",{"type":52,"value":1991}," — Variation B presignedAssetUrl",{"type":47,"tag":1970,"props":1993,"children":1994},{},[1995,2001],{"type":47,"tag":76,"props":1996,"children":1998},{"className":1997},[],[1999],{"type":52,"value":2000},"url_C",{"type":52,"value":2002}," — Variation C presignedAssetUrl",{"type":47,"tag":108,"props":2004,"children":2005},{},[],{"type":47,"tag":330,"props":2007,"children":2009},{"id":2008},"step-7-preview-all-3",[2010],{"type":52,"value":2011},"Step 7 — Preview All 3",{"type":47,"tag":350,"props":2013,"children":2015},{"className":526,"code":2014,"language":528,"meta":355,"style":355},"asset_preview_file({\n  assets: [\n    { name: \"Variation 1 — \u003Ccut_type> \u003Cstyle>.mp4\", presignedAssetUrl: url_A, source: \"acp\" },\n    { name: \"Variation 2 — \u003Ccut_type> \u003Cstyle>.mp4\", presignedAssetUrl: url_B, source: \"acp\" },\n    { name: \"Variation 3 — \u003Ccut_type> \u003Cstyle>.mp4\", presignedAssetUrl: url_C, source: \"acp\" }\n  ]\n})\n",[2016],{"type":47,"tag":76,"props":2017,"children":2018},{"__ignoreMap":355},[2019,2034,2050,2128,2201,2274,2281],{"type":47,"tag":361,"props":2020,"children":2021},{"class":363,"line":364},[2022,2026,2030],{"type":47,"tag":361,"props":2023,"children":2024},{"style":538},[2025],{"type":52,"value":89},{"type":47,"tag":361,"props":2027,"children":2028},{"style":543},[2029],{"type":52,"value":817},{"type":47,"tag":361,"props":2031,"children":2032},{"style":368},[2033],{"type":52,"value":822},{"type":47,"tag":361,"props":2035,"children":2036},{"class":363,"line":825},[2037,2042,2046],{"type":47,"tag":361,"props":2038,"children":2039},{"style":829},[2040],{"type":52,"value":2041},"  assets",{"type":47,"tag":361,"props":2043,"children":2044},{"style":368},[2045],{"type":52,"value":392},{"type":47,"tag":361,"props":2047,"children":2048},{"style":543},[2049],{"type":52,"value":841},{"type":47,"tag":361,"props":2051,"children":2052},{"class":363,"line":844},[2053,2058,2063,2067,2071,2076,2080,2084,2089,2093,2098,2102,2107,2111,2115,2120,2124],{"type":47,"tag":361,"props":2054,"children":2055},{"style":368},[2056],{"type":52,"value":2057},"    {",{"type":47,"tag":361,"props":2059,"children":2060},{"style":829},[2061],{"type":52,"value":2062}," name",{"type":47,"tag":361,"props":2064,"children":2065},{"style":368},[2066],{"type":52,"value":392},{"type":47,"tag":361,"props":2068,"children":2069},{"style":368},[2070],{"type":52,"value":376},{"type":47,"tag":361,"props":2072,"children":2073},{"style":399},[2074],{"type":52,"value":2075},"Variation 1 — \u003Ccut_type> \u003Cstyle>.mp4",{"type":47,"tag":361,"props":2077,"children":2078},{"style":368},[2079],{"type":52,"value":387},{"type":47,"tag":361,"props":2081,"children":2082},{"style":368},[2083],{"type":52,"value":410},{"type":47,"tag":361,"props":2085,"children":2086},{"style":829},[2087],{"type":52,"value":2088}," presignedAssetUrl",{"type":47,"tag":361,"props":2090,"children":2091},{"style":368},[2092],{"type":52,"value":392},{"type":47,"tag":361,"props":2094,"children":2095},{"style":543},[2096],{"type":52,"value":2097}," url_A",{"type":47,"tag":361,"props":2099,"children":2100},{"style":368},[2101],{"type":52,"value":410},{"type":47,"tag":361,"props":2103,"children":2104},{"style":829},[2105],{"type":52,"value":2106}," source",{"type":47,"tag":361,"props":2108,"children":2109},{"style":368},[2110],{"type":52,"value":392},{"type":47,"tag":361,"props":2112,"children":2113},{"style":368},[2114],{"type":52,"value":376},{"type":47,"tag":361,"props":2116,"children":2117},{"style":399},[2118],{"type":52,"value":2119},"acp",{"type":47,"tag":361,"props":2121,"children":2122},{"style":368},[2123],{"type":52,"value":387},{"type":47,"tag":361,"props":2125,"children":2126},{"style":368},[2127],{"type":52,"value":987},{"type":47,"tag":361,"props":2129,"children":2130},{"class":363,"line":853},[2131,2135,2139,2143,2147,2152,2156,2160,2164,2168,2173,2177,2181,2185,2189,2193,2197],{"type":47,"tag":361,"props":2132,"children":2133},{"style":368},[2134],{"type":52,"value":2057},{"type":47,"tag":361,"props":2136,"children":2137},{"style":829},[2138],{"type":52,"value":2062},{"type":47,"tag":361,"props":2140,"children":2141},{"style":368},[2142],{"type":52,"value":392},{"type":47,"tag":361,"props":2144,"children":2145},{"style":368},[2146],{"type":52,"value":376},{"type":47,"tag":361,"props":2148,"children":2149},{"style":399},[2150],{"type":52,"value":2151},"Variation 2 — \u003Ccut_type> \u003Cstyle>.mp4",{"type":47,"tag":361,"props":2153,"children":2154},{"style":368},[2155],{"type":52,"value":387},{"type":47,"tag":361,"props":2157,"children":2158},{"style":368},[2159],{"type":52,"value":410},{"type":47,"tag":361,"props":2161,"children":2162},{"style":829},[2163],{"type":52,"value":2088},{"type":47,"tag":361,"props":2165,"children":2166},{"style":368},[2167],{"type":52,"value":392},{"type":47,"tag":361,"props":2169,"children":2170},{"style":543},[2171],{"type":52,"value":2172}," url_B",{"type":47,"tag":361,"props":2174,"children":2175},{"style":368},[2176],{"type":52,"value":410},{"type":47,"tag":361,"props":2178,"children":2179},{"style":829},[2180],{"type":52,"value":2106},{"type":47,"tag":361,"props":2182,"children":2183},{"style":368},[2184],{"type":52,"value":392},{"type":47,"tag":361,"props":2186,"children":2187},{"style":368},[2188],{"type":52,"value":376},{"type":47,"tag":361,"props":2190,"children":2191},{"style":399},[2192],{"type":52,"value":2119},{"type":47,"tag":361,"props":2194,"children":2195},{"style":368},[2196],{"type":52,"value":387},{"type":47,"tag":361,"props":2198,"children":2199},{"style":368},[2200],{"type":52,"value":987},{"type":47,"tag":361,"props":2202,"children":2203},{"class":363,"line":884},[2204,2208,2212,2216,2220,2225,2229,2233,2237,2241,2246,2250,2254,2258,2262,2266,2270],{"type":47,"tag":361,"props":2205,"children":2206},{"style":368},[2207],{"type":52,"value":2057},{"type":47,"tag":361,"props":2209,"children":2210},{"style":829},[2211],{"type":52,"value":2062},{"type":47,"tag":361,"props":2213,"children":2214},{"style":368},[2215],{"type":52,"value":392},{"type":47,"tag":361,"props":2217,"children":2218},{"style":368},[2219],{"type":52,"value":376},{"type":47,"tag":361,"props":2221,"children":2222},{"style":399},[2223],{"type":52,"value":2224},"Variation 3 — \u003Ccut_type> \u003Cstyle>.mp4",{"type":47,"tag":361,"props":2226,"children":2227},{"style":368},[2228],{"type":52,"value":387},{"type":47,"tag":361,"props":2230,"children":2231},{"style":368},[2232],{"type":52,"value":410},{"type":47,"tag":361,"props":2234,"children":2235},{"style":829},[2236],{"type":52,"value":2088},{"type":47,"tag":361,"props":2238,"children":2239},{"style":368},[2240],{"type":52,"value":392},{"type":47,"tag":361,"props":2242,"children":2243},{"style":543},[2244],{"type":52,"value":2245}," url_C",{"type":47,"tag":361,"props":2247,"children":2248},{"style":368},[2249],{"type":52,"value":410},{"type":47,"tag":361,"props":2251,"children":2252},{"style":829},[2253],{"type":52,"value":2106},{"type":47,"tag":361,"props":2255,"children":2256},{"style":368},[2257],{"type":52,"value":392},{"type":47,"tag":361,"props":2259,"children":2260},{"style":368},[2261],{"type":52,"value":376},{"type":47,"tag":361,"props":2263,"children":2264},{"style":399},[2265],{"type":52,"value":2119},{"type":47,"tag":361,"props":2267,"children":2268},{"style":368},[2269],{"type":52,"value":387},{"type":47,"tag":361,"props":2271,"children":2272},{"style":368},[2273],{"type":52,"value":444},{"type":47,"tag":361,"props":2275,"children":2276},{"class":363,"line":914},[2277],{"type":47,"tag":361,"props":2278,"children":2279},{"style":543},[2280],{"type":52,"value":1331},{"type":47,"tag":361,"props":2282,"children":2283},{"class":363,"line":937},[2284,2288],{"type":47,"tag":361,"props":2285,"children":2286},{"style":368},[2287],{"type":52,"value":1340},{"type":47,"tag":361,"props":2289,"children":2290},{"style":543},[2291],{"type":52,"value":1345},{"type":47,"tag":55,"props":2293,"children":2294},{},[2295,2299,2300,2310],{"type":47,"tag":68,"props":2296,"children":2297},{},[2298],{"type":52,"value":104},{"type":52,"value":595},{"type":47,"tag":100,"props":2301,"children":2302},{},[2303,2304,2309],{"type":52,"value":600},{"type":47,"tag":76,"props":2305,"children":2307},{"className":2306},[],[2308],{"type":52,"value":89},{"type":52,"value":607},{"type":52,"value":2311}," — present all 3 variation URLs directly in the message, labeled by variation:",{"type":47,"tag":350,"props":2313,"children":2317},{"className":2314,"code":2316,"language":52},[2315],"language-text","Variation 1 — \u003Ccut_type> \u003Cstyle>.mp4 → \u003Curl_A>\nVariation 2 — \u003Ccut_type> \u003Cstyle>.mp4 → \u003Curl_B>\nVariation 3 — \u003Ccut_type> \u003Cstyle>.mp4 → \u003Curl_C>\n",[2318],{"type":47,"tag":76,"props":2319,"children":2320},{"__ignoreMap":355},[2321],{"type":52,"value":2316},{"type":47,"tag":55,"props":2323,"children":2324},{},[2325,2327,2333],{"type":52,"value":2326},"UI clients that render media URLs inline will show previews automatically. In Codex or other non-UI agents, download each to the workspace (",{"type":47,"tag":76,"props":2328,"children":2330},{"className":2329},[],[2331],{"type":52,"value":2332},"curl -L -o variation_1.mp4 \"\u003Curl_A>\"",{"type":52,"value":2334},", etc.) and reference those local paths instead.",{"type":47,"tag":108,"props":2336,"children":2337},{},[],{"type":47,"tag":330,"props":2339,"children":2341},{"id":2340},"step-8-deliver-summary-download-prompt",[2342],{"type":52,"value":2343},"Step 8 — Deliver Summary + Download Prompt",{"type":47,"tag":55,"props":2345,"children":2346},{},[2347],{"type":52,"value":2348},"After preview, present:",{"type":47,"tag":350,"props":2350,"children":2353},{"className":2351,"code":2352,"language":52},[2315],"✅ 3 variations ready — same length, different moment selection. Pick your favorite!\n\n| Variation | Cut Type | Style   | Target | Status |\n| --------- | -------- | ------- | ------ | ------ |\n| 1         | \u003Ctype>   | \u003Cstyle> | ~\u003CXs>  | ✅      |\n| 2         | \u003Ctype>   | \u003Cstyle> | ~\u003CXs>  | ✅      |\n| 3         | \u003Ctype>   | \u003Cstyle> | ~\u003CXs>  | ✅      |\n",[2354],{"type":47,"tag":76,"props":2355,"children":2356},{"__ignoreMap":355},[2357],{"type":52,"value":2352},{"type":47,"tag":61,"props":2359,"children":2360},{},[2361],{"type":47,"tag":55,"props":2362,"children":2363},{},[2364],{"type":52,"value":2365},"Note: actual durations may vary — Quick Cut selects the best moments rather than cutting to\nan exact second. The prompt vibe (e.g. \"no breathing room\") reinforces the intended length\nfeel more than the target_duration parameter alone.",{"type":47,"tag":55,"props":2367,"children":2368},{},[2369],{"type":52,"value":2370},"Then prompt:",{"type":47,"tag":61,"props":2372,"children":2373},{},[2374],{"type":47,"tag":55,"props":2375,"children":2376},{},[2377],{"type":47,"tag":100,"props":2378,"children":2379},{},[2380],{"type":52,"value":2381},"\"Which variation do you want to download, or would you like all 3? You can also rerun with a different style or cut type.\"",{"type":47,"tag":55,"props":2383,"children":2384},{},[2385],{"type":52,"value":2386},"The videos are available for download directly from the preview above (or from the links above on a no-widget surface).",{"type":47,"tag":108,"props":2388,"children":2389},{},[],{"type":47,"tag":112,"props":2391,"children":2393},{"id":2392},"️-known-gap-output-cannot-feed-downstream-video-tools",[2394],{"type":52,"value":2395},"⚠️ Known Gap — Output Cannot Feed Downstream Video Tools",{"type":47,"tag":55,"props":2397,"children":2398},{},[2399,2404,2406,2411,2412,2418],{"type":47,"tag":76,"props":2400,"children":2402},{"className":2401},[],[2403],{"type":52,"value":238},{"type":52,"value":2405}," returns a temporary presigned download URL, not a CC-stored asset ID.\nTools like ",{"type":47,"tag":76,"props":2407,"children":2409},{"className":2408},[],[2410],{"type":52,"value":314},{"type":52,"value":477},{"type":47,"tag":76,"props":2413,"children":2415},{"className":2414},[],[2416],{"type":52,"value":2417},"media_enhance_speech",{"type":52,"value":2419}," require a CC asset ID as input.",{"type":47,"tag":55,"props":2421,"children":2422},{},[2423],{"type":47,"tag":68,"props":2424,"children":2425},{},[2426],{"type":52,"value":2427},"You cannot chain Quick Cut → Resize or Quick Cut → Enhance Speech directly.",{"type":47,"tag":55,"props":2429,"children":2430},{},[2431],{"type":47,"tag":68,"props":2432,"children":2433},{},[2434],{"type":52,"value":2435},"Workaround — if user wants to resize a Quick Cut output:",{"type":47,"tag":2437,"props":2438,"children":2439},"ol",{},[2440,2450,2455,2468],{"type":47,"tag":1970,"props":2441,"children":2442},{},[2443,2445],{"type":52,"value":2444},"Tell the user: ",{"type":47,"tag":100,"props":2446,"children":2447},{},[2448],{"type":52,"value":2449},"\"Quick Cut outputs can't be passed directly to the resize tool — you'll need to download your preferred cut first, then re-upload it and I'll resize from there.\"",{"type":47,"tag":1970,"props":2451,"children":2452},{},[2453],{"type":52,"value":2454},"Let them download from the preview.",{"type":47,"tag":1970,"props":2456,"children":2457},{},[2458,2460,2466],{"type":52,"value":2459},"Re-ingest the downloaded file exactly as in Step 2 (",{"type":47,"tag":76,"props":2461,"children":2463},{"className":2462},[],[2464],{"type":52,"value":2465},"asset_add_file()",{"type":52,"value":2467},", or the no-widget staging fallback).",{"type":47,"tag":1970,"props":2469,"children":2470},{},[2471,2473,2478,2480,2485],{"type":52,"value":2472},"Once re-uploaded, run ",{"type":47,"tag":76,"props":2474,"children":2476},{"className":2475},[],[2477],{"type":52,"value":314},{"type":52,"value":2479}," on the fresh ",{"type":47,"tag":76,"props":2481,"children":2483},{"className":2482},[],[2484],{"type":52,"value":219},{"type":52,"value":2486}," with their target dimensions.",{"type":47,"tag":55,"props":2488,"children":2489},{},[2490],{"type":52,"value":2491},"When the user asks to resize or enhance a Quick Cut output, surface the limitation proactively — the chain is known to fail.",{"type":47,"tag":108,"props":2493,"children":2494},{},[],{"type":47,"tag":112,"props":2496,"children":2498},{"id":2497},"what-quick-cut-does-not-support",[2499],{"type":52,"value":2500},"What Quick Cut Does NOT Support",{"type":47,"tag":1966,"props":2502,"children":2503},{},[2504,2509,2514],{"type":47,"tag":1970,"props":2505,"children":2506},{},[2507],{"type":52,"value":2508},"Content-aware cuts based on speech (\"remove the parts where they repeat themselves\")",{"type":47,"tag":1970,"props":2510,"children":2511},{},[2512],{"type":52,"value":2513},"Trimming to specific timestamps (\"cut from 0:30 to 1:15\")",{"type":47,"tag":1970,"props":2515,"children":2516},{},[2517],{"type":52,"value":2518},"Semantic understanding of dialogue",{"type":47,"tag":55,"props":2520,"children":2521},{},[2522],{"type":52,"value":2523},"For these, recommend a manual video-editing workflow.",{"type":47,"tag":108,"props":2525,"children":2526},{},[],{"type":47,"tag":112,"props":2528,"children":2530},{"id":2529},"error-handling",[2531],{"type":52,"value":2532},"Error Handling",{"type":47,"tag":1966,"props":2534,"children":2535},{},[2536,2606,2616,2651,2661,2671,2697],{"type":47,"tag":1970,"props":2537,"children":2538},{},[2539,2549,2551],{"type":47,"tag":68,"props":2540,"children":2541},{},[2542,2547],{"type":47,"tag":76,"props":2543,"children":2545},{"className":2544},[],[2546],{"type":52,"value":238},{"type":52,"value":2548}," returns 403 (entitlement)",{"type":52,"value":2550},": Retrying does not help for a 403\nentitlement — stop and surface the plan requirement. Respond with:",{"type":47,"tag":61,"props":2552,"children":2553},{},[2554,2562,2575,2585,2598],{"type":47,"tag":55,"props":2555,"children":2556},{},[2557],{"type":47,"tag":100,"props":2558,"children":2559},{},[2560],{"type":52,"value":2561},"\"I was unable to create your quick cut.",{"type":47,"tag":55,"props":2563,"children":2564},{},[2565],{"type":47,"tag":100,"props":2566,"children":2567},{},[2568,2573],{"type":47,"tag":68,"props":2569,"children":2570},{},[2571],{"type":52,"value":2572},"Why:",{"type":52,"value":2574}," Adobe Quick Cut isn't available on your current Adobe plan.",{"type":47,"tag":55,"props":2576,"children":2577},{},[2578,2580],{"type":52,"value":2579},"*",{"type":47,"tag":68,"props":2581,"children":2582},{},[2583],{"type":52,"value":2584},"Options:",{"type":47,"tag":1966,"props":2586,"children":2587},{},[2588,2593],{"type":47,"tag":1970,"props":2589,"children":2590},{},[2591],{"type":52,"value":2592},"Upgrade your Adobe plan to one that includes Quick Cut.*",{"type":47,"tag":1970,"props":2594,"children":2595},{},[2596],{"type":52,"value":2597},"Manually trim your video using Adobe Premiere Rush or Premiere Pro.*",{"type":47,"tag":55,"props":2599,"children":2600},{},[2601],{"type":47,"tag":100,"props":2602,"children":2603},{},[2604],{"type":52,"value":2605},"Let me know how you'd like to proceed.\"",{"type":47,"tag":1970,"props":2607,"children":2608},{},[2609,2614],{"type":47,"tag":68,"props":2610,"children":2611},{},[2612],{"type":52,"value":2613},"Any tool call returns 401 (not authenticated)",{"type":52,"value":2615},": Ask the user to re-authenticate via Adobe\nOAuth and retry.",{"type":47,"tag":1970,"props":2617,"children":2618},{},[2619,2628,2630],{"type":47,"tag":68,"props":2620,"children":2621},{},[2622],{"type":47,"tag":76,"props":2623,"children":2625},{"className":2624},[],[2626],{"type":52,"value":2627},"StoryBuilderNoARoll",{"type":52,"value":2629},": The most common error. Means Quick Cut detected no A-roll (talking\nhead \u002F primary camera footage) in the clip — only B-roll. The tool requires at least some\ndialogue or narration to anchor the story structure. Respond with:",{"type":47,"tag":61,"props":2631,"children":2632},{},[2633,2641],{"type":47,"tag":55,"props":2634,"children":2635},{},[2636],{"type":47,"tag":100,"props":2637,"children":2638},{},[2639],{"type":52,"value":2640},"\"This video appears to be B-roll only — scenery, action, or product shots without anyone\nspeaking to camera. Quick Cut needs some talking-head footage to build a story around. Try\nuploading a video that includes someone speaking on camera, or a mix of interview + B-roll.",{"type":47,"tag":55,"props":2642,"children":2643},{},[2644,2649],{"type":47,"tag":100,"props":2645,"children":2646},{},[2647],{"type":52,"value":2648},"If you only have B-roll, Adobe Premiere Rush or Adobe Express let you manually assemble a\nhighlight reel without requiring dialogue.\"",{"type":52,"value":2650},"\nRetries repeat the same error regardless of duration\u002Fstyle; no workaround exists.",{"type":47,"tag":1970,"props":2652,"children":2653},{},[2654,2659],{"type":47,"tag":68,"props":2655,"children":2656},{},[2657],{"type":52,"value":2658},"Job fails with any other error on first attempt",{"type":52,"value":2660},": Retry once with the same parameters. If\nit fails again, report and suggest re-uploading the source video.",{"type":47,"tag":1970,"props":2662,"children":2663},{},[2664,2669],{"type":47,"tag":68,"props":2665,"children":2666},{},[2667],{"type":52,"value":2668},"Stuck at same % for 5+ poll rounds",{"type":52,"value":2670},": Inform user, suggest re-uploading the source video.",{"type":47,"tag":1970,"props":2672,"children":2673},{},[2674,2679,2681,2687,2689,2695],{"type":47,"tag":68,"props":2675,"children":2676},{},[2677],{"type":52,"value":2678},"User uploads an image by mistake",{"type":52,"value":2680},": Detect from ",{"type":47,"tag":76,"props":2682,"children":2684},{"className":2683},[],[2685],{"type":52,"value":2686},"mediaType",{"type":52,"value":2688}," — if not ",{"type":47,"tag":76,"props":2690,"children":2692},{"className":2691},[],[2693],{"type":52,"value":2694},"video\u002F*",{"type":52,"value":2696},", say so\nand re-open the picker (or re-run the no-widget staging fallback).",{"type":47,"tag":1970,"props":2698,"children":2699},{},[2700,2705,2707,2712],{"type":47,"tag":68,"props":2701,"children":2702},{},[2703],{"type":52,"value":2704},"One of the 3 variations fails (but not all)",{"type":52,"value":2706},": Preview and deliver the successful ones, note\nthe failure clearly. If all 3 fail with ",{"type":47,"tag":76,"props":2708,"children":2710},{"className":2709},[],[2711],{"type":52,"value":2627},{"type":52,"value":2713},", apply the B-roll error response\nabove.",{"type":47,"tag":108,"props":2715,"children":2716},{},[],{"type":47,"tag":112,"props":2718,"children":2720},{"id":2719},"constraints",[2721],{"type":52,"value":2722},"Constraints",{"type":47,"tag":1966,"props":2724,"children":2725},{},[2726,2766],{"type":47,"tag":1970,"props":2727,"children":2728},{},[2729,2731,2736,2738,2743,2745,2750,2752,2757,2759,2764],{"type":52,"value":2730},"Never pass a raw local filesystem path to ",{"type":47,"tag":76,"props":2732,"children":2734},{"className":2733},[],[2735],{"type":52,"value":238},{"type":52,"value":2737}," or any other video tool. Local files must reach Creative Cloud first — selected via the ",{"type":47,"tag":76,"props":2739,"children":2741},{"className":2740},[],[2742],{"type":52,"value":81},{"type":52,"value":2744}," picker, or (no-widget fallback) staged via ",{"type":47,"tag":76,"props":2746,"children":2748},{"className":2747},[],[2749],{"type":52,"value":193},{"type":52,"value":2751}," → PUT → ",{"type":47,"tag":76,"props":2753,"children":2755},{"className":2754},[],[2756],{"type":52,"value":201},{"type":52,"value":2758},"; only the resulting ",{"type":47,"tag":76,"props":2760,"children":2762},{"className":2761},[],[2763],{"type":52,"value":219},{"type":52,"value":2765}," is valid.",{"type":47,"tag":1970,"props":2767,"children":2768},{},[2769,2774,2776,2781,2783,2788],{"type":47,"tag":76,"props":2770,"children":2772},{"className":2771},[],[2773],{"type":52,"value":238},{"type":52,"value":2775}," requires ",{"type":47,"tag":76,"props":2777,"children":2779},{"className":2778},[],[2780],{"type":52,"value":219},{"type":52,"value":2782}," (CC asset ID), not ",{"type":47,"tag":76,"props":2784,"children":2786},{"className":2785},[],[2787],{"type":52,"value":584},{"type":52,"value":586},{"type":47,"tag":1386,"props":2790,"children":2791},{},[2792],{"type":52,"value":2793},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":2795,"total":2997},[2796,2817,2840,2857,2872,2891,2910,2926,2942,2956,2968,2981],{"slug":2797,"name":2797,"fn":2798,"description":2799,"org":2800,"tags":2801,"stars":2814,"repoUrl":2815,"updatedAt":2816},"prior-auth-packet-builder","build healthcare prior authorization packets","Build a concise prior authorization packet from local case files and payer policy docs.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2802,2805,2808,2811],{"name":2803,"slug":2804,"type":15},"Documents","documents",{"name":2806,"slug":2807,"type":15},"Healthcare","healthcare",{"name":2809,"slug":2810,"type":15},"Insurance","insurance",{"name":2812,"slug":2813,"type":15},"Regulatory Compliance","regulatory-compliance",28169,"https:\u002F\u002Fgithub.com\u002Fopenai\u002Fopenai-agents-python","2026-08-02T05:48:07.395855",{"slug":2818,"name":2818,"fn":2819,"description":2820,"org":2821,"tags":2822,"stars":2837,"repoUrl":2838,"updatedAt":2839},"aspnet-core","build ASP.NET Core web applications","Build, review, refactor, or architect ASP.NET Core web applications using current official guidance for .NET web development. Use when working on Blazor Web Apps, Razor Pages, MVC, Minimal APIs, controller-based Web APIs, SignalR, gRPC, middleware, dependency injection, configuration, authentication, authorization, testing, performance, deployment, or ASP.NET Core upgrades.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2823,2826,2828,2831,2834],{"name":2824,"slug":2825,"type":15},".NET","dotnet",{"name":2827,"slug":2818,"type":15},"ASP.NET Core",{"name":2829,"slug":2830,"type":15},"Blazor","blazor",{"name":2832,"slug":2833,"type":15},"C#","csharp",{"name":2835,"slug":2836,"type":15},"Web Development","web-development",23787,"https:\u002F\u002Fgithub.com\u002Fopenai\u002Fskills","2026-04-12T05:07:02.819491",{"slug":2841,"name":2841,"fn":2842,"description":2843,"org":2844,"tags":2845,"stars":2837,"repoUrl":2838,"updatedAt":2856},"chatgpt-apps","build ChatGPT Apps SDK applications","Build, scaffold, refactor, and troubleshoot ChatGPT Apps SDK applications that combine an MCP server and widget UI. Use when Codex needs to design tools, register UI resources, wire the MCP Apps bridge or ChatGPT compatibility APIs, apply Apps SDK metadata or CSP or domain settings, or produce a docs-aligned project scaffold. Prefer a docs-first workflow by invoking the openai-docs skill or OpenAI developer docs MCP tools before generating code.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2846,2849,2852,2855],{"name":2847,"slug":2848,"type":15},"Apps SDK","apps-sdk",{"name":2850,"slug":2851,"type":15},"ChatGPT","chatgpt",{"name":2853,"slug":2854,"type":15},"MCP","mcp",{"name":9,"slug":8,"type":15},"2026-04-12T05:07:05.468097",{"slug":2858,"name":2858,"fn":2859,"description":2860,"org":2861,"tags":2862,"stars":2837,"repoUrl":2838,"updatedAt":2871},"cli-creator","build CLIs from API docs","Build a composable CLI for Codex from API docs, an OpenAPI spec, existing curl examples, an SDK, a web app, an admin tool, or a local script. Use when the user wants Codex to create a command-line tool that can run from any repo, expose composable read\u002Fwrite commands, return stable JSON, manage auth, and pair with a companion skill.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2863,2866,2869],{"name":2864,"slug":2865,"type":15},"API Development","api-development",{"name":2867,"slug":2868,"type":15},"CLI","cli",{"name":2870,"slug":42,"type":15},"Codex","2026-04-12T05:07:04.132762",{"slug":2873,"name":2873,"fn":2874,"description":2875,"org":2876,"tags":2877,"stars":2837,"repoUrl":2838,"updatedAt":2890},"cloudflare-deploy","deploy projects to Cloudflare","Deploy applications and infrastructure to Cloudflare using Workers, Pages, and related platform services. Use when the user asks to deploy, host, publish, or set up a project on Cloudflare.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2878,2881,2884,2887],{"name":2879,"slug":2880,"type":15},"Cloudflare","cloudflare",{"name":2882,"slug":2883,"type":15},"Cloudflare Pages","cloudflare-pages",{"name":2885,"slug":2886,"type":15},"Cloudflare Workers","cloudflare-workers",{"name":2888,"slug":2889,"type":15},"Deployment","deployment","2026-04-12T05:07:14.275118",{"slug":2892,"name":2892,"fn":2893,"description":2894,"org":2895,"tags":2896,"stars":2837,"repoUrl":2838,"updatedAt":2909},"define-goal","define and set measurable project goals","Help the user define a concrete, measurable goal before starting work, especially when they ask to use the goal tool, create a goal, set an objective, clarify success criteria, or turn a fuzzy intention into a quantitative outcome. Use this skill for goal creation and goal refinement only; it does not manage durable snapshots, decision logs, or long-running execution artifacts.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2897,2900,2903,2906],{"name":2898,"slug":2899,"type":15},"Productivity","productivity",{"name":2901,"slug":2902,"type":15},"Project Management","project-management",{"name":2904,"slug":2905,"type":15},"Strategy","strategy",{"name":2907,"slug":2908,"type":15},"Task Management","task-management","2026-05-23T06:17:16.870838",{"slug":2911,"name":2911,"fn":2912,"description":2913,"org":2914,"tags":2915,"stars":2837,"repoUrl":2838,"updatedAt":2925},"figma","translate Figma designs into code","Use the Figma MCP server to fetch design context, screenshots, variables, and assets from Figma, and to translate Figma nodes into production code. Trigger when a task involves Figma URLs, node IDs, design-to-code implementation, or Figma MCP setup and troubleshooting.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2916,2919,2921,2924],{"name":2917,"slug":2918,"type":15},"Design","design",{"name":2920,"slug":2911,"type":15},"Figma",{"name":2922,"slug":2923,"type":15},"Frontend","frontend",{"name":2853,"slug":2854,"type":15},"2026-04-12T05:06:47.939943",{"slug":2927,"name":2927,"fn":2928,"description":2929,"org":2930,"tags":2931,"stars":2837,"repoUrl":2838,"updatedAt":2941},"figma-code-connect-components","connect Figma designs to code components","Connects Figma design components to code components using Code Connect mapping tools. Use when user says \"code connect\", \"connect this component to code\", \"map this component\", \"link component to code\", \"create code connect mapping\", or wants to establish mappings between Figma designs and code implementations. For canvas writes via `use_figma`, use `figma-use`.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2932,2933,2936,2937,2938],{"name":2917,"slug":2918,"type":15},{"name":2934,"slug":2935,"type":15},"Design System","design-system",{"name":2920,"slug":2911,"type":15},{"name":2922,"slug":2923,"type":15},{"name":2939,"slug":2940,"type":15},"UI Components","ui-components","2026-05-10T05:59:52.971881",{"slug":2943,"name":2943,"fn":2944,"description":2945,"org":2946,"tags":2947,"stars":2837,"repoUrl":2838,"updatedAt":2955},"figma-create-design-system-rules","generate design system rules from Figma","Generates custom design system rules for the user's codebase. Use when user says \"create design system rules\", \"generate rules for my project\", \"set up design rules\", \"customize design system guidelines\", or wants to establish project-specific conventions for Figma-to-code workflows. Requires Figma MCP server connection.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2948,2949,2950,2953,2954],{"name":2917,"slug":2918,"type":15},{"name":2934,"slug":2935,"type":15},{"name":2951,"slug":2952,"type":15},"Documentation","documentation",{"name":2920,"slug":2911,"type":15},{"name":2922,"slug":2923,"type":15},"2026-05-16T06:07:47.821474",{"slug":2957,"name":2957,"fn":2958,"description":2959,"org":2960,"tags":2961,"stars":2837,"repoUrl":2838,"updatedAt":2967},"figma-implement-design","translate Figma designs into application code","Translates Figma designs into production-ready application code with 1:1 visual fidelity. Use when implementing UI code from Figma files, when user mentions \"implement design\", \"generate code\", \"implement component\", provides Figma URLs, or asks to build components matching Figma specs. For Figma canvas writes via `use_figma`, use `figma-use`.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2962,2963,2964,2965,2966],{"name":2917,"slug":2918,"type":15},{"name":2920,"slug":2911,"type":15},{"name":2922,"slug":2923,"type":15},{"name":2939,"slug":2940,"type":15},{"name":2835,"slug":2836,"type":15},"2026-05-16T06:07:40.583615",{"slug":2969,"name":2969,"fn":2970,"description":2971,"org":2972,"tags":2973,"stars":2837,"repoUrl":2838,"updatedAt":2980},"hatch-pet","create animated pets for Codex","Create, repair, validate, visually QA, and package Codex-compatible animated pets and pet spritesheets from character art, generated images, company or prospect brand cues, or visual references. Use when a user wants a lightweight-worker Codex pet workflow, a non-pixel custom pet style, a prospect or company mascot pet, or a full 8x9 animated pet atlas with transparent unused cells, QA contact sheets, and pet.json packaging. This skill composes the installed $imagegen system skill for visual generation and uses bundled scripts for deterministic spritesheet assembly.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2974,2977,2978,2979],{"name":2975,"slug":2976,"type":15},"Animation","animation",{"name":2870,"slug":42,"type":15},{"name":17,"slug":18,"type":15},{"name":2917,"slug":2918,"type":15},"2026-05-02T05:31:48.48485",{"slug":2982,"name":2982,"fn":2983,"description":2984,"org":2985,"tags":2986,"stars":2837,"repoUrl":2838,"updatedAt":2996},"imagegen","generate and edit raster images","Generate or edit raster images when the task benefits from AI-created bitmap visuals such as photos, illustrations, textures, sprites, mockups, or transparent-background cutouts. Use when Codex should create a brand-new image, transform an existing image, or derive visual variants from references, and the output should be a bitmap asset rather than repo-native code or vector. Do not use when the task is better handled by editing existing SVG\u002Fvector\u002Fcode-native assets, extending an established icon or logo system, or building the visual directly in HTML\u002FCSS\u002Fcanvas.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2987,2988,2989,2992,2995],{"name":17,"slug":18,"type":15},{"name":2917,"slug":2918,"type":15},{"name":2990,"slug":2991,"type":15},"Image Generation","image-generation",{"name":2993,"slug":2994,"type":15},"Images","images",{"name":9,"slug":8,"type":15},"2026-05-15T06:23:24.312127",578,{"items":2999,"total":3087},[3000,3017,3029,3041,3056,3069,3075],{"slug":3001,"name":3001,"fn":3002,"description":3003,"org":3004,"tags":3005,"stars":22,"repoUrl":23,"updatedAt":3016},"accessibility-and-inclusive-visualization","make data visualizations accessible","Make data visualizations accessible and inclusive. Use when the user needs chart or diagram accessibility guidance, text alternatives for complex visuals, color and contrast review, keyboard support, reduced-motion behavior for animation or parallax, or an accessibility QA workflow for exported figures, UML-like diagrams, and dashboards.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[3006,3009,3012,3015],{"name":3007,"slug":3008,"type":15},"Accessibility","accessibility",{"name":3010,"slug":3011,"type":15},"Charts","charts",{"name":3013,"slug":3014,"type":15},"Data Visualization","data-visualization",{"name":2917,"slug":2918,"type":15},"2026-06-30T19:00:57.102",{"slug":3018,"name":3018,"fn":3019,"description":3020,"org":3021,"tags":3022,"stars":22,"repoUrl":23,"updatedAt":3028},"adobe-batch-edit-photos","apply consistent photo adjustments","Apply consistent photo adjustments across a set of images so they look like they were edited together. Use this skill whenever the user says \"make my photos look cohesive\", \"give all these the same style\", \"apply a warm and golden feel to all of these\", \"make this cinematic\", \"match the look across my photos\", \"edit all my travel photos the same way\", \"batch edit these\", \"make these consistent\", \"fix my phone photos\", or uploads a folder of photos and wants a unified, polished result. Also triggers for requests like \"apply a preset to all of these\", \"make these look professional\", or \"they were shot in mixed lighting — can you fix them all\". Outputs direct final image URLs plus an in-chat preview grid and optional Firefly Board link. Access: 🔐 Signed-In required | Gen AI: ❌\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[3023,3024,3025],{"name":17,"slug":18,"type":15},{"name":13,"slug":14,"type":15},{"name":3026,"slug":3027,"type":15},"Imaging","imaging","2026-08-28T15:09:11.185865",{"slug":3030,"name":3030,"fn":3031,"description":3032,"org":3033,"tags":3034,"stars":22,"repoUrl":23,"updatedAt":3040},"adobe-create-mockups","create product and scene mockups","Use when a user wants to see their logo, design, or sketch on a product or scene mockup — mugs, t-shirts, business cards, hats, phone screens, posters, billboards, or similar. Triggers on \"create mockups\", \"show my logo on products\", or any logo upload with a request to visualize it on items. Access: 🔐 Signed-In required | Gen AI: ✅ Adobe Firefly via `image_generate` used for design creation, sketch polishing, and mockup scene generation\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[3035,3036,3037],{"name":17,"slug":18,"type":15},{"name":2917,"slug":2918,"type":15},{"name":3038,"slug":3039,"type":15},"Graphics","graphics","2026-08-28T15:09:07.42507",{"slug":3042,"name":3042,"fn":3043,"description":3044,"org":3045,"tags":3046,"stars":22,"repoUrl":23,"updatedAt":3055},"adobe-create-social-variations","export platform-ready social media assets","Resize, crop, or export any image or video into platform-ready social media assets using Adobe Creative Cloud tools. Use this skill when a user wants to prepare a photo, image, or video for one or more social platforms — Instagram, TikTok, LinkedIn, Facebook, YouTube, Snapchat, Pinterest, Threads, or X\u002FTwitter. Triggers on: \"prepare my image for Instagram\", \"resize for TikTok\", \"get this ready to post\", \"make versions for all platforms\", \"social media sizes\", \"crop for stories\", \"export for LinkedIn\", \"resize my video for social\", \"make social media assets\", or any request to adapt a photo or video for specific platforms. Handles subject-aware cropping, AI canvas expansion, test previews before full runs, and same-ratio video resizing.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[3047,3048,3049,3052],{"name":17,"slug":18,"type":15},{"name":3038,"slug":3039,"type":15},{"name":3050,"slug":3051,"type":15},"Marketing","marketing",{"name":3053,"slug":3054,"type":15},"Social Media","social-media","2026-08-28T15:10:07.282096",{"slug":3057,"name":3057,"fn":3058,"description":3059,"org":3060,"tags":3061,"stars":22,"repoUrl":23,"updatedAt":3068},"adobe-design-from-template","create visual designs from templates","Create any visual design using Adobe Express templates — flyers, posters, social media posts (Instagram, Facebook, LinkedIn), business cards, invitations, greeting cards, resumes, cover letters, brochures, newsletters, certificates, presentations, YouTube thumbnails, email headers, logos, menus, and labels. Use this skill whenever the user wants to make, design, or build any visual — even if they just say \"make me a flyer\", \"design a poster\", \"I need something for Instagram\", \"create an event invite\", or \"make a business card\". Also handles browsing templates, editing text, replacing images, changing backgrounds, animating, and exporting designs. Access: 🔐 Signed-In required | Gen AI: ❌ by default — image replacement only where the surface permits generative AI (e.g. Codex); none on Claude\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[3062,3063,3064,3065],{"name":17,"slug":18,"type":15},{"name":2917,"slug":2918,"type":15},{"name":3038,"slug":3039,"type":15},{"name":3066,"slug":3067,"type":15},"Templates","templates","2026-08-28T15:10:03.050113",{"slug":4,"name":4,"fn":5,"description":6,"org":3070,"tags":3071,"stars":22,"repoUrl":23,"updatedAt":24},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[3072,3073,3074],{"name":17,"slug":18,"type":15},{"name":13,"slug":14,"type":15},{"name":20,"slug":21,"type":15},{"slug":3076,"name":3076,"fn":3077,"description":3078,"org":3079,"tags":3080,"stars":22,"repoUrl":23,"updatedAt":3086},"adobe-retouch-portraits","batch retouch portrait photos","Bulk-retouch a folder of portrait photos using Adobe tools — designed for wedding photographers and event photographers who need fast, walk-away batch processing. Use this skill when the user says \"retouch my photos\", \"batch process these portraits\", \"process my wedding photos\", \"clean up this folder of images\", \"run my headshots through Adobe\", or uploads\u002Fselects a folder of photos and wants them polished and ready to review. Automatically applies auto-straighten, auto-tone, and auto-light to every image. Outputs a preview grid and download folder. Access: 🔐 Signed-In required | Gen AI: ❌ by default — optional background-only cleanup only where the surface permits generative AI (e.g. Codex); none on Claude\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[3081,3082,3083],{"name":17,"slug":18,"type":15},{"name":3026,"slug":3027,"type":15},{"name":3084,"slug":3085,"type":15},"Photography","photography","2026-08-28T15:09:10.386974",499]