Runway Agent UGC and Commercial skills vs Sume catalog Formats

Runway's UGC Video and Commercial skills run in an Agent chat. Sume's sume-close-camera-ugc and sume-product-commercial Formats are called by slug from code.

5 min readSume
All posts

Runway Agent's UGC Video skill creates an influencer video where a person talks to the camera in a casual style, and its Commercial skill produces a commercial with a hook, proof and call to action; both run inside an Agent chat. Sume ships catalog Formats for the same jobs, sume-close-camera-ugc and sume-product-commercial, which any key with formats:write can call by slug from code. Read the Format's description and io profile before you call it.

Closest matches

Agent skills and catalog Formats (read 2026-10-04)
Runway skill (per Runway's page)Sume catalog slugHow you start it
UGC Video: person talks to the camera, casual stylesume-close-camera-ugcPOST /v1/formats/sume/sume-close-camera-ugc/runs
Commercial: hook, proof and call to actionsume-product-commercialPOST /v1/formats/sume/sume-product-commercial/runs
Mobile app and product clips (no matching skill listed)sume-mobile-app-ugc, sume-product-usage-demoSame path, different slug

Look before you call

The catalog's own page tells you to read a Format with GET /v1/formats/sume/{slug}, which returns its description and an io profile: input_kind is url, text, image or product, and output_kind is video, image or text. The run body's input is free-form by design, so that profile and the description are the contract between a Format's author and you.

This script prints both for the two slugs above.

import json, os, urllib.request

def describe(slug: str) -> None:
    req = urllib.request.Request(
        f"https://api.sume.com/v1/formats/sume/{slug}",
        headers={"Authorization": "Bearer " + os.environ["SUME_API_KEY"]},
    )
    with urllib.request.urlopen(req) as resp:
        body = json.load(resp)
    fmt = body.get("data", body)
    print(slug, "|", fmt.get("description"), "|", fmt.get("io"))

for slug in ("sume-close-camera-ugc", "sume-product-commercial"):
    describe(slug)

The difference in who is watching

A skill checks in with you as it goes, and you can redirect Agent at any step. A Format run is one unattended turn, so a gate such as approve these stills first is treated as already granted and the run carries on within its spend cap. Put the quality bar into the instruction and the cap on the request.

The run belongs to the caller

Calling a catalog Format needs nothing to fork or install. The run, its media and its spend belong to the key that called, and the Format itself stays shared. Fork one in the Format library only when you want to change it.

Sources

Related posts

More in Comparisons

All Comparisons posts

Written by Sume