{
  "schemaVersion": "1.0.0",
  "skills": [
    {
      "id": "3d-animation-short-generator",
      "displayName": "3D Animation Short Generator",
      "description": "Produce one coherent multi-shot stylized 3D animated short from story lock through final-film QC.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Story-to-finished stylized animation composition",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Locks one original story, visual system, audio mode, character identities, environments, props, and continuity before paid generation.",
        "Converts the approved story into atomic timed shots, generates only required references and clips, and carries accepted states across the sequence.",
        "Assembles one finished film and verifies identity, action, screen direction, speaker/mouth behavior, sound, duration, and technical integrity."
      ],
      "howToUse": {
        "summary": "Provide the premise or accepted story, intended audience, duration, ratio, original visual direction, silent or dialogue-led audio mode, language, fixed character/world facts, supplied references, required/forbidden content, and desired delivery stage.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a 30-second 16:9 stylized 3D animated short about a shy cloud learning to make rain for one thirsty flower. Use an original warm handcrafted look, silent storytelling with music and SFX, three recurring character expressions, and deliver the finished film plus its shot manifest."
          }
        ]
      },
      "output": {
        "Media type": "One final MP4 plus story/visual lock, reference manifest, timed shot manifest, continuity report, and operation receipts",
        "Default quantity": "1 finished animated short",
        "Content per video": "One original causal story told through multiple continuity-linked stylized 3D animation shots",
        "Default layout": "User-requested ratio, duration, resolution, language, and silent or dialogue-led audio mode",
        "Model policy": "Kling 3 precise frames; Kling Omni complex/motion references; Seedance 2.5 long audiovisual/artistic/performance; Veo source-image synchronous audio; Seedance 2.0 routine; H3 large/natural motion",
        "Downstream use": "Human creative, continuity, audio, safety, and publication review"
      }
    },
    {
      "id": "add-braces",
      "displayName": "Add Braces",
      "description": "Preview one braces style on clearly visible teeth.",
      "category": "Person appearance",
      "categoryTags": [
        "person-appearance"
      ],
      "coverImage": "/skill-covers/add-braces.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "rose",
      "featured": false,
      "whatThisSkillDoes": [
        "Produces one smiling portrait with one braces treatment.",
        "Limits editing to visible tooth surfaces and orthodontic hardware.",
        "Preserves tooth count and layout, mouth geometry, identity, expression, and scene."
      ],
      "howToUse": {
        "summary": "Provide one sharp smiling portrait with visible teeth and name the braces style.",
        "promptExamples": [
          {
            "title": "Add silver braces",
            "prompt": "Add realistic small silver brackets and a thin archwire to the visible teeth."
          }
        ]
      },
      "output": {
        "Media type": "One edited portrait image",
        "Default quantity": "1",
        "Content per image": "One person with one braces treatment",
        "Default layout": "Preserve source composition; no collage",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Cosmetic consultation and personal visualization"
      }
    },
    {
      "id": "add-speech-bubble",
      "displayName": "Add Speech Bubble",
      "description": "Add exact dialogue bubbles at the right subjects.",
      "category": "Social and layout",
      "categoryTags": [
        "social-and-layout"
      ],
      "coverImage": "/skill-covers/add-speech-bubble.png",
      "routeLabel": "GPT Image 2 overlay",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Adds oval, cloud, rectangle, starburst, caption, or text-only bubbles.",
        "Binds each text string, body, and tail endpoint to a declared speaker."
      ],
      "howToUse": {
        "summary": "Provide image, exact text per speaker, style, and target or location. #### Add dialogue ```text Add an oval bubble above the woman, tail at her mouth, exact text: “五分钟后见！” ``` ## Workflow 1. Map each exact line to speaker, tail target, placement, style, and reading order. 2. Reserve faces and important objects; choose fill, stroke, font, and contrast. 3. Use `gpt-image` v1.0, GPT Image 2 Medium, original ratio, `batchCount: 1`. 4. Preserve source outside bubble regions; do not invent dialogue or cover faces. 5. Verify copy character by character, tail endpoint, speaker, layer order, legibility, and bubble count. When this Skill selects GPT Image 2, use `quality: \"medium\"` and `imageSize: \"2K\"` by default; change either only when the user explicitly requests another tier.",
        "promptExamples": [
          {
            "title": "Add dialogue",
            "prompt": "Add an oval bubble above the woman, tail at her mouth, exact text: “五分钟后见！”"
          }
        ]
      },
      "output": {
        "Media type": "One annotated image",
        "Default quantity": "1",
        "Content per image": "Source plus requested bubbles only",
        "Default layout": "Original frame with overlays",
        "Model policy": "GPT Image 2 Medium with agent-led copy and placement verification",
        "Downstream use": "Comics, social posts, and annotations"
      }
    },
    {
      "id": "add-tattoo",
      "displayName": "Add Tattoo",
      "description": "Preview one tattoo with realistic placement on visible skin.",
      "category": "Person appearance",
      "categoryTags": [
        "person-appearance"
      ],
      "coverImage": "/skill-covers/add-tattoo.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "rose",
      "featured": false,
      "whatThisSkillDoes": [
        "Produces one image with one tattoo design at one specified body location.",
        "Conforms ink to skin perspective, curvature, pores, lighting, and occlusion.",
        "Preserves identity, anatomy, clothing, pose, and scene."
      ],
      "howToUse": {
        "summary": "Provide one authorized image with visible target skin and describe or supply an original tattoo design.",
        "promptExamples": [
          {
            "title": "Place a botanical tattoo",
            "prompt": "Place a small original black botanical linework tattoo along the outer forearm."
          }
        ]
      },
      "output": {
        "Media type": "One edited image",
        "Default quantity": "1",
        "Content per image": "One person with one tattoo placement",
        "Default layout": "Preserve source composition; no collage",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Tattoo consultation and placement planning"
      }
    },
    {
      "id": "add-video-effect",
      "displayName": "Add Video Effect",
      "description": "Add one specified effect to a supplied video at a defined time and region while preserving underlying footage.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/add-video-effect.png",
      "routeLabel": "MiniMax H3 localized video edit",
      "tone": "pink",
      "featured": false,
      "whatThisSkillDoes": [
        "Adds a bounded effect such as glow, particles, flare, weather or speed treatment.",
        "Anchors timing, target, duration and interaction so the effect does not become a full restyle."
      ],
      "howToUse": {
        "summary": "Provide video, exact effect, target, start and end time, intensity and protected content.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Add a subtle golden particle trail behind the skateboard from 00:02–00:04; preserve rider, board and camera."
          }
        ]
      },
      "output": {
        "Media type": "One MP4 video",
        "Default quantity": "1",
        "Content per video": "The source clip with one time-bounded visual effect",
        "Default layout": "User-requested delivery format",
        "Model policy": "MiniMax H3 for source-video editing; stop when the required tracking/edit contract is unavailable",
        "Downstream use": "Creative post-production"
      },
      "similarSkills": [
        {
          "id": "correct-video-color",
          "displayName": "Correct Video Color",
          "difference": "Correct Video Color: Correct white balance, exposure and shot-to-shot consistency without changing content or creative look. In contrast, Add Video Effect: Add one specified effect to a supplied video at a defined time and region while preserving underlying footage."
        },
        {
          "id": "restyle-video",
          "displayName": "Restyle Video",
          "difference": "Restyle Video: Transform the visual treatment of a supplied video while retaining timing, motion, subjects and continuity. In contrast, Add Video Effect: Add one specified effect to a supplied video at a defined time and region while preserving underlying footage."
        },
        {
          "id": "upscale-video",
          "displayName": "Upscale Video",
          "difference": "Upscale Video: Increase supplied video resolution and clarity while preserving timing, content, grain intent and natural detail. In contrast, Add Video Effect: Add one specified effect to a supplied video at a defined time and region while preserving underlying footage."
        }
      ]
    },
    {
      "id": "ai-banner-design",
      "displayName": "AI Banner Design",
      "description": "Research and design channel-ready commercial banners.",
      "category": "Layout / composition",
      "categoryTags": [
        "layout-composition"
      ],
      "coverImage": "/skill-covers/ai-banner-design.png",
      "routeLabel": "Research plus GPT Image 2 banner production",
      "tone": "lime",
      "featured": false,
      "whatThisSkillDoes": [
        "Resolves the banner's placement, crop behavior, and safe area through live official research when available or a labeled built-in preset when browsing is unavailable.",
        "Searches a focused set of current industry references when the harness supports it; search failure does not block the Banner workflow.",
        "Converts the business message into one banner hierarchy and one distinctive visual direction.",
        "Uses GPT Image 2 Medium for every final banner; Midjourney may only create an optional text-free artistic-direction reference upstream."
      ],
      "howToUse": {
        "summary": "State where the banner will appear, what it should communicate, and any exact copy or brand assets. The Agent checks current requirements when browsing is available and otherwise uses a matching dated preset.",
        "promptExamples": [
          {
            "title": "Create a software website hero",
            "prompt": "Create a website hero banner for our AI workflow product using the headline “Work moves itself”."
          },
          {
            "title": "Create a YouTube channel banner",
            "prompt": "Create a YouTube banner for a practical AI-tools channel called “Applied AI Lab”."
          },
          {
            "title": "Create a paid display banner",
            "prompt": "Create a Google display banner for our accounting software trial campaign."
          }
        ]
      },
      "output": {
        "Media type": "One researched-or-preset banner image plus a compact specification and acceptance record",
        "Default quantity": "1 master banner; additional placements are separate deliverables",
        "Content per image": "One commercial objective, one focal hierarchy, and placement-safe exact copy",
        "Default layout": "Researched placement dimensions; inferred SaaS website hero uses a responsive 16:9 master",
        "Video output": "No",
        "Specification source": "Live official research when available; otherwise a labeled built-in official snapshot, project working preset, or user-supplied dimensions",
        "Model policy": "GPT Image 2 Medium produces every final banner; Midjourney may only produce an optional text-free artistic-direction reference that is then supplied to GPT Image 2",
        "Downstream use": "Website heroes, YouTube channels, paid display, social covers, email headers, marketplace campaigns, launches, and announcements"
      },
      "similarSkills": [
        {
          "id": "make-thumbnail",
          "displayName": "Make Thumbnail",
          "difference": "Make Thumbnail: Create a platform-aware cover or thumbnail. In contrast, AI Banner Design: Research and design channel-ready commercial banners."
        },
        {
          "id": "poster-design",
          "displayName": "Poster Design",
          "difference": "Poster Design: Create distinctive posters across varied art directions. In contrast, AI Banner Design: Research and design channel-ready commercial banners."
        },
        {
          "id": "product-detail-page",
          "displayName": "Product Detail Page",
          "difference": "Product Detail Page: Build modular ecommerce detail-page image sets. In contrast, AI Banner Design: Research and design channel-ready commercial banners."
        }
      ]
    },
    {
      "id": "ai-product",
      "displayName": "AI Product",
      "description": "Place a real product into a new commercial scene.",
      "category": "Commercial production",
      "categoryTags": [
        "commercial-production"
      ],
      "coverImage": "/skill-covers/ai-product.png",
      "routeLabel": "WeShop AI Product or GPT Image 2",
      "tone": "sage",
      "featured": false,
      "whatThisSkillDoes": [
        "Preserves one supplied product while changing its background, surface, lighting, and commercial context.",
        "Creates simple studio, material, lifestyle, or copy-space product scenes.",
        "Generates or accepts an ideal empty background, turns it into an AI Product custom Location, then places the protected product into it.",
        "Checks product fidelity, segmentation edges, grounding, lighting, scene adherence, and output count.",
        "Retries only the failed property and never treats a long-running accepted job as failed."
      ],
      "howToUse": {
        "summary": "Provide one clear product image and describe the setting or commercial use.",
        "promptExamples": [
          {
            "title": "Create a material studio scene",
            "prompt": "Place these headphones on a pale oak surface with warm side light and a cream plaster background."
          },
          {
            "title": "Create a lifestyle scene",
            "prompt": "Place this coffee maker in a bright modern kitchen while keeping the exact machine unchanged."
          },
          {
            "title": "Reserve copy space",
            "prompt": "Create a clean campaign-ready product image with the product low-left and empty space above."
          }
        ]
      },
      "output": {
        "Media type": "One product-scene image plus original and acceptance record",
        "Default quantity": "1 separate image",
        "Content per image": "One preserved product in one coherent commercial environment",
        "Default layout": "One image; no typography, grid, collage, or extra product",
        "Model policy": "GPT Image 2 medium/2K for empty background generation, then AI Product with a custom Location for product placement; GPT Image 2 composition is the fallback",
        "Downstream use": "Product pages, posters, banners, detail layouts, social graphics, and collages"
      },
      "similarSkills": [
        {
          "id": "create-white-background-product-mockup",
          "displayName": "White Background Product Mockup",
          "difference": "White Background Product Mockup: Create product, flat-lay, and ghost-mannequin mockups without identity drift. In contrast, AI Product: Place a real product into a new commercial scene."
        },
        {
          "id": "product-packaging",
          "displayName": "Product Packaging",
          "difference": "Product Packaging: Turn product references into a structured packaging concept board. In contrast, AI Product: Place a real product into a new commercial scene."
        }
      ]
    },
    {
      "id": "animate-image",
      "displayName": "Animate Image",
      "description": "Animate one supplied still with bounded subject and camera motion while preserving identity and composition.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/animate-image.png",
      "routeLabel": "Kling 3.0 image-to-video",
      "tone": "cyan",
      "featured": false,
      "whatThisSkillDoes": [
        "Adds controlled motion to a still rather than regenerating an unrelated scene.",
        "Separates subject, environmental and camera motion to reduce warping."
      ],
      "howToUse": {
        "summary": "Provide one image, desired motion, camera behavior, duration and audio preference.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Animate this still life for 5 seconds: candle flickers, curtain moves slightly, camera locked; preserve every object."
          }
        ]
      },
      "output": {
        "Media type": "One MP4 video",
        "Default quantity": "1",
        "Content per video": "The supplied still brought to life as one shot",
        "Default layout": "User-requested delivery format",
        "Model policy": "`kling` v1.0 with `modelName: Kling_3_0`",
        "Downstream use": "Motion posts and cinematic inserts"
      }
    },
    {
      "id": "apply-makeup",
      "displayName": "Apply Makeup",
      "description": "Preview one makeup look without replacing or reshaping the face.",
      "category": "Person appearance",
      "categoryTags": [
        "person-appearance"
      ],
      "coverImage": "/skill-covers/apply-makeup.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "rose",
      "featured": false,
      "whatThisSkillDoes": [
        "Produces one portrait with one coherent makeup treatment.",
        "Separates eye, brow, cheek, complexion, and lip instructions.",
        "Preserves pores, facial landmarks, age, expression, hair, wardrobe, and scene."
      ],
      "howToUse": {
        "summary": "Provide one clear portrait and describe the finish, palette, and intensity.",
        "promptExamples": [
          {
            "title": "Apply natural editorial makeup",
            "prompt": "Apply soft editorial makeup with brown liner, muted rose lips, subtle blush, and natural skin texture."
          }
        ]
      },
      "output": {
        "Media type": "One edited portrait image",
        "Default quantity": "1",
        "Content per image": "One person with one makeup look",
        "Default layout": "Preserve source composition; no collage",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Beauty consultation, campaign planning, and personal preview"
      },
      "similarSkills": [
        {
          "id": "retouch-blemish",
          "displayName": "Retouch Blemish",
          "difference": "Retouch Blemish: Remove temporary blemishes without plastic-looking skin. In contrast, Apply Makeup: Preview one makeup look without replacing or reshaping the face."
        },
        {
          "id": "smooth-wrinkles",
          "displayName": "Smooth Wrinkles",
          "difference": "Smooth Wrinkles: Reduce chosen skin or clothing wrinkles without flattening structure. In contrast, Apply Makeup: Preview one makeup look without replacing or reshaping the face."
        }
      ]
    },
    {
      "id": "apply-photo-filter",
      "displayName": "Apply Photo Filter",
      "description": "Apply one filter without changing scene content.",
      "category": "Social and layout",
      "categoryTags": [
        "social-and-layout"
      ],
      "coverImage": "/skill-covers/apply-photo-filter.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "orange",
      "featured": false,
      "whatThisSkillDoes": [
        "Changes palette, tone curve, saturation, grain, bloom, and vignette as one treatment.",
        "Preserves people, objects, text, crop, and spatial structure."
      ],
      "howToUse": {
        "summary": "Provide image, filter recipe or reference, intensity, and protected colors. #### Apply a film look ```text Apply a restrained 1990s film look with warm highlights, cool shadows, and fine grain at 40%. ``` ## Workflow 1. Separate invariants from white balance, contrast, black point, saturation, grain, bloom, and vignette. 2. Run `gpt-image` v1.0 with `quality: \"medium\"`, `imageSize: \"2K\"`, the supplied references, the requested or source-preserving ratio, `batchCount: 1`, and one result. 3. Forbid pose, face, object, background, text, or crop changes. 4. Compare landmarks for drift; inspect skin, neutrals, clipping, banding, noise, and intensity. 5. Retry with narrower controls if content or composition changes.",
        "promptExamples": [
          {
            "title": "Apply a film look",
            "prompt": "Apply a restrained 1990s film look with warm highlights, cool shadows, and fine grain at 40%."
          }
        ]
      },
      "output": {
        "Media type": "One filtered photograph",
        "Default quantity": "1",
        "Content per image": "Unchanged source content with one grade",
        "Default layout": "Source composition",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Social, editorial, and campaign grading"
      },
      "similarSkills": [
        {
          "id": "remove-photo-filter",
          "displayName": "Remove Photo Filter",
          "difference": "Remove Photo Filter: Remove an artificial grade and restore a natural look. In contrast, Apply Photo Filter: Apply one filter without changing scene content."
        },
        {
          "id": "recolor-object",
          "displayName": "Recolor Object",
          "difference": "Recolor Object: Recolor one object without tinting the whole image. In contrast, Apply Photo Filter: Apply one filter without changing scene content."
        }
      ]
    },
    {
      "id": "backrooms-dreamcore",
      "displayName": "Backrooms Dreamcore",
      "description": "Turn one authorized reference into a restrained, photoreal liminal-space dossier and optional media.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/backrooms-dreamcore.png",
      "routeLabel": "Personalized Level-0 space dossier and visual route",
      "tone": "lime",
      "featured": false,
      "whatThisSkillDoes": [
        "Classifies one reference as a subject-led, scene-led, or mixed source and preserves the requested identity, spatial structure, mood, or detail.",
        "Produces a compact space dossier that turns four optional atmospheric choices into clear spatial constraints.",
        "Generates only on request, with Level-0 visual grammar primary and the supplied reference grafted in without poster-like spectacle."
      ],
      "howToUse": {
        "summary": "Provide one authorized image, whether subject or scene takes priority, four choices or permission to use fast mode, the requested output medium, ratio, and any must-keep reference facts.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "用这张办公室照片做我的后室切片。先问我四个选择题，再给一个空间档案；我确认后生成 16:9 的真实摄影感静帧，保留窗边那张红椅子。"
          }
        ]
      },
      "output": {
        "Media type": "One Markdown dossier, optionally one still or one short MP4",
        "Default quantity": "One dossier; media only when requested",
        "Content per artifact": "Preserved source role, tendencies, Level-0 visual contract, and observable acceptance checks",
        "Default layout": "User-requested ratio; source ratio for optional media when unspecified",
        "Model policy": "GPT Image 2 Medium/2K for stills; existing current video route for one requested shot",
        "Downstream use": "Approved atmospheric stills, inserts, or a dedicated video workflow"
      }
    },
    {
      "id": "brand-promo-video-generator",
      "displayName": "Brand Promo Video Generator",
      "description": "Produce one authenticity-checked promotional short for a brand, app, website, shop, service, or launch.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Verified-brand multi-beat campaign video",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Builds a source-backed brand truth sheet and identity-asset provenance manifest before creative production.",
        "Converts one campaign goal into a timed multi-beat promotional story with verified proof, readable copy, authentic assets, and a clear CTA.",
        "Generates and assembles only the needed media, then checks claims, identity, pacing, language, audio, and final campaign integrity."
      ],
      "howToUse": {
        "summary": "Provide the campaign subject and goal, target audience/channel, duration, ratio, official URL when relevant, authorized logo/UI/product/people/packaging assets, brand colors/type guidance, verified features or claims, required copy/CTA/disclaimers, language, audio preference, and forbidden content.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Make a 20-second 9:16 launch promo for this habit-tracking app. Use the supplied logo and UI exports exactly, target first-time runners, show the real plan/reminder/progress flow, use English on-screen copy, and finish with the approved “Start your first week” CTA."
          }
        ]
      },
      "output": {
        "Media type": "One final MP4 plus brand truth sheet, provenance manifest, campaign treatment, timed shot manifest, claim/copy ledger, and operation receipts",
        "Default quantity": "1 promotional short; one campaign cut unless variants are explicitly requested",
        "Content per video": "Hook, verified brand/product/service experience, proof or payoff, brand lockup, and exact CTA",
        "Default layout": "User-requested channel ratio, duration, resolution, copy language, and audio plan",
        "Model policy": "Kling 3 precise product/UI frames; Kling Omni complex/motion references; Seedance 2.5 long audiovisual/artistic/performance; Veo source-image synchronous audio; Seedance 2.0 routine; H3 large/natural motion",
        "Downstream use": "Human brand, claim, rights, channel, and publication review"
      },
      "similarSkills": [
        {
          "id": "digital-product-promo-generator",
          "displayName": "Digital Product Promo Generator",
          "difference": "Digital Product Promo Generator: Produce one authentic digital-product promo plan and video with explicit inputs, boundaries, and acceptance checks. In contrast, Brand Promo Video Generator: Produce one authenticity-checked promotional short for a brand, app, website, shop, service, or launch."
        }
      ]
    },
    {
      "id": "brand-stream-mg",
      "displayName": "Brand Stream MG",
      "description": "Produce one logo-led neon brand motion with explicit inputs, boundaries, and acceptance checks.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Independent outcome contract",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Captures the specific requested outcome and authorized asset roles.",
        "Produces a reviewable plan before any paid media route.",
        "Hands only approved atomic work to currently verified native Atoms."
      ],
      "howToUse": {
        "summary": "Provide the desired result, authorized inputs, preservation requirements, ratio/duration when relevant, and acceptance criteria.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create one logo-led neon brand motion from my authorized assets; preserve the stated facts and show the plan before media generation."
          }
        ]
      },
      "output": {
        "Media type": "One logo-led neon brand motion",
        "Default quantity": "1",
        "Content per artifact": "Approved plan, requested deliverable, and acceptance result",
        "Default layout": "User-requested format",
        "Model policy": "Existing verified native Atoms only",
        "Downstream use": "Review, assembly, or publication after user approval"
      },
      "similarSkills": [
        {
          "id": "dot-matrix-brand-wordmark-motion",
          "displayName": "Dot Matrix Brand Wordmark Motion",
          "difference": "Dot Matrix Brand Wordmark Motion: Produce one exact brand wordmark dot-matrix motion with explicit inputs, boundaries, and acceptance checks. In contrast, Brand Stream MG: Produce one logo-led neon brand motion with explicit inputs, boundaries, and acceptance checks."
        },
        {
          "id": "make-video-intro",
          "displayName": "Make Video Intro",
          "difference": "Make Video Intro: Create one short reusable branded intro with exact identity, legible title and a clean transition into program content. In contrast, Brand Stream MG: Produce one logo-led neon brand motion with explicit inputs, boundaries, and acceptance checks."
        },
        {
          "id": "poster-motion",
          "displayName": "Poster Motion",
          "difference": "Poster Motion: Animate an uploaded poster into one readable, full-frame motion poster. In contrast, Brand Stream MG: Produce one logo-led neon brand motion with explicit inputs, boundaries, and acceptance checks."
        }
      ]
    },
    {
      "id": "casting",
      "displayName": "Casting",
      "description": "Select and approve a screen-ready Chinese character face before deriving optional studio assets.",
      "category": "Character and brand",
      "categoryTags": [
        "character-and-brand"
      ],
      "coverImage": "/skill-covers/casting.png",
      "routeLabel": "GPT Image 2 face-first casting package",
      "tone": "violet",
      "featured": true,
      "whatThisSkillDoes": [
        "Converts a role card or script description into a Chinese screen character.",
        "Generates exactly one vertical, pure-white, front-facing casting portrait first.",
        "Stops for explicit face approval. Only then creates user-selected full-body, 3×3 expression-grid, and/or turnaround assets.",
        "Uses separately controlled high-end CG rendering for 漫剧, 3D漫剧, 3D角色, 三维, CG, or 三渲二 requests."
      ],
      "howToUse": {
        "summary": "Request the six role-card fields when available: person type, build, facial features, skin/hair/makeup, temperament, and intended character type. A script or freeform description is acceptable. Complete only reasonable omissions and state them in one sentence before submission.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "为民国悬疑短剧选一个26岁女记者：身形清瘦，偏窄长脸、平直微挑眉、长眼微上扬，暖白细腻肤色和低盘发，表面温柔但在隐藏锋芒。先出纯白底定脸；我确认后再选全身或表情。"
          }
        ]
      },
      "output": {
        "Media type": "Approval-gated image casting package",
        "Default quantity": "One face-setting portrait",
        "Optional quantity": "One selected full-body, expression grid, and/or turnaround board",
        "Content": "Chinese screen-role character on a pure-white background",
        "Default layout": "Vertical 3:4 portrait; selected 3:4 derivatives; 16:9 turnaround board",
        "Model policy": "GPT Image 2 Medium/2K after current-schema verification",
        "Downstream use": "Short-drama, film, comic, and story production casting references"
      },
      "similarSkills": [
        {
          "id": "create-character",
          "displayName": "Create Character",
          "difference": "Create Character: Build one canonical identity, then derive seven consistent character assets from it. In contrast, Casting: Select and approve a screen-ready Chinese character face before deriving optional studio assets."
        },
        {
          "id": "create-npc",
          "displayName": "Create NPC",
          "difference": "Create NPC: Create one original non-player character image whose occupation, faction and gameplay role are visually legible. In contrast, Casting: Select and approve a screen-ready Chinese character face before deriving optional studio assets."
        }
      ]
    },
    {
      "id": "change-bangs",
      "displayName": "Change Bangs",
      "description": "Preview one fringe style without replacing the full haircut.",
      "category": "Person appearance",
      "categoryTags": [
        "person-appearance"
      ],
      "coverImage": "/skill-covers/change-bangs.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "rose",
      "featured": false,
      "whatThisSkillDoes": [
        "Produces one portrait with one requested bangs style.",
        "Limits editing to the forehead and front hair section.",
        "Preserves the remaining cut, hair color, identity, face, and scene."
      ],
      "howToUse": {
        "summary": "Provide one front or three-quarter portrait and describe the fringe shape and length.",
        "promptExamples": [
          {
            "title": "Add curtain bangs",
            "prompt": "Add soft eyebrow-length curtain bangs with a light center opening."
          }
        ]
      },
      "output": {
        "Media type": "One edited portrait image",
        "Default quantity": "1",
        "Content per image": "One person with one bangs treatment",
        "Default layout": "Preserve source composition; no collage",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Salon consultation and haircut planning"
      },
      "similarSkills": [
        {
          "id": "hairstyle-change",
          "displayName": "Hairstyle Change",
          "difference": "Hairstyle Change: Preview one different hairstyle without changing identity. In contrast, Change Bangs: Preview one fringe style without replacing the full haircut."
        },
        {
          "id": "hair-color-change",
          "displayName": "Hair Color Change",
          "difference": "Hair Color Change: Preview one new hair color without changing the person or cut. In contrast, Change Bangs: Preview one fringe style without replacing the full haircut."
        },
        {
          "id": "shave-head",
          "displayName": "Shave Head",
          "difference": "Shave Head: Preview a natural bald or shaved-head appearance. In contrast, Change Bangs: Preview one fringe style without replacing the full haircut."
        }
      ]
    },
    {
      "id": "change-pose",
      "displayName": "Change Pose",
      "description": "Change a person’s pose without changing their look.",
      "category": "Commercial production",
      "categoryTags": [
        "commercial-production"
      ],
      "coverImage": "/skill-covers/change-pose.png",
      "routeLabel": "WeShop AI Pose pro or GPT Image 2",
      "tone": "blue",
      "featured": true,
      "whatThisSkillDoes": [
        "Changes only the pose of one already-dressed person.",
        "Returns three deliberately different commercial choices when the target pose is unspecified.",
        "Preserves the source identity, body proportions, complete outfit, branding, accessories, footwear, and scene locks.",
        "Routes text poses to WeShop AI Pose pro and supplied pose references to GPT Image 2.",
        "Validates pose accuracy, identity, garment fidelity, anatomy, scene continuity, and output count."
      ],
      "howToUse": {
        "summary": "Provide one clear dressed-person image and describe the new pose; if you do not specify one, the Skill returns three different commercial pose options.",
        "promptExamples": [
          {
            "title": "Create three pose options",
            "prompt": "Give this model a different pose."
          },
          {
            "title": "Create one described pose",
            "prompt": "Turn the model three-quarter to camera with one hand at the hip and weight on the back leg."
          },
          {
            "title": "Follow a pose reference",
            "prompt": "Make the dressed model follow the supplied pose reference while keeping the original person, outfit, and studio."
          }
        ]
      },
      "output": {
        "Media type": "Separate pose-change images plus a compact acceptance record",
        "Default quantity": "3 when no pose is specified; otherwise 1",
        "Content per image": "One model in one pose",
        "Default layout": "Preserve source scene and framing; no collage",
        "Model policy": "`aipose` pro for text poses; GPT Image 2 medium/2K for supplied pose references",
        "Downstream use": "Lookbooks, collages, product pages, photoshoots, posters, and banners"
      },
      "similarSkills": [
        {
          "id": "fashion-model-replacement",
          "displayName": "Fashion Model Replacement",
          "difference": "Fashion Model Replacement: Replace a fashion model while keeping the outfit intact. In contrast, Change Pose: Change a person’s pose without changing their look."
        },
        {
          "id": "virtual-try-on",
          "displayName": "Virtual Try-On",
          "difference": "Virtual Try-On: Try on or replace a garment with fidelity checks. In contrast, Change Pose: Change a person’s pose without changing their look."
        }
      ]
    },
    {
      "id": "character-reference-sheet",
      "displayName": "Character Reference Sheet",
      "description": "Redirect legacy character-sheet requests to the canonical character workflow without creating a duplicate run.",
      "category": "Platform tooling",
      "categoryTags": [
        "platform-tooling"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Compatibility redirect to Create Character",
      "tone": "ink",
      "featured": false,
      "whatThisSkillDoes": [
        "Preserves compatibility for older character-sheet requests.",
        "Redirects execution to Create Character, which owns the canonical sheet and optional expansion."
      ],
      "howToUse": {
        "summary": "Use this compatibility entry only when an existing integration or prompt explicitly selects `character-reference-sheet`; new requests should select Create Character.",
        "promptExamples": [
          {
            "title": "Redirect a legacy request",
            "prompt": "Use character-reference-sheet for this older integration and preserve the supplied character brief."
          }
        ]
      },
      "output": {
        "Media type": "Compatibility redirect",
        "Default quantity": "No independent output; `$create-character` returns 1 canonical sheet by default and optionally expands to 8 total images after confirmation",
        "Model policy": "Owned by `$create-character`",
        "Downstream use": "Backward-compatible routing only"
      }
    },
    {
      "id": "character-toy-grid-motion",
      "displayName": "Character Toy Grid Motion",
      "description": "Turn one character image into a vertical designer-toy six-panel poster and an animated grid reveal.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Identity-locked six-panel toy poster and motion",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Extracts visible character identity, coverage state, props, and color anchors from one supplied image.",
        "Produces an irregular six-panel 9:16 poster before planning motion.",
        "Uses the approved poster as the reference for an opening-panel expansion, return transition, and stable grid motion."
      ],
      "howToUse": {
        "summary": "Upload one mascot, IP character, or original-character image and state any name, copy, duration, or audio preference. A Canvas-capable Agent may group accepted poster and clip artifacts; otherwise it returns them directly.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "把这张吉祥物做成 9:16 潮玩六宫格动态海报：第四格先全屏表演，再回到不规则圆角六宫格；保留它的围巾和黄色背包。"
          }
        ]
      },
      "output": {
        "Media type": "One 9:16 poster and one MP4 motion poster",
        "Default quantity": "1 poster and 1 clip",
        "Content per video": "Opening-panel reveal and stable six-panel motion",
        "Default layout": "9:16",
        "Model policy": "Current verified image route plus catalog-selected video route",
        "Downstream use": "Character campaign and social presentation"
      }
    },
    {
      "id": "children-english-story-episode",
      "displayName": "Children’s English Story Episode",
      "description": "Plan an original children’s English story episode with reusable character and scene anchors.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Original recurring-character learning episode",
      "tone": "green",
      "featured": false,
      "whatThisSkillDoes": [
        "Turns an original chapter and target expression into child-safe story beats and natural repetition.",
        "Plans reusable character, scene, and scale references before shot keyframes."
      ],
      "howToUse": {
        "summary": "Provide original story material, focus character, target expression, age range, duration, and existing authorized sheets. Canvas asset registry is optional when supported. #### Example ```text 用原创小动物角色教 4–7 岁孩子 “May I join?”：45 秒 9:16，先做故事分镜和角色/场景资产计划。 ``` ## Workflow 1. Lock original-world rights, learning objective, age suitability, focus character, and short beat structure. 2. Approve script and reusable character/scene/scale assets before keyframes. 3. Use existing image routes and `$generate-video` for approved clips; keep each durable operation key and do not claim voice or song generation. 4. Check consistency, repetition quality, child safety, ratio, and source independence.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "用原创小动物角色教 4–7 岁孩子 “May I join?”：45 秒 9:16，先做故事分镜和角色/场景资产计划。"
          }
        ]
      },
      "output": {
        "Media type": "Episode plan, requested sheets/keyframes, and MP4 clips or assembly",
        "Default quantity": "One episode plan",
        "Content per video": "One short original learning-story beat",
        "Default layout": "9:16 unless requested otherwise",
        "Model policy": "Existing character/image routes and catalog-selected video route; no standalone audio claim",
        "Downstream use": "Children’s learning series"
      }
    },
    {
      "id": "cinematic-video-prompt",
      "displayName": "Cinematic Video Prompt",
      "description": "Cinematic or image-to-video motion prompt.",
      "category": "Media workflows",
      "categoryTags": [
        "media-workflows"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Agent-authored structured brief",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Freezes the request, approved facts, source assets, constraints, and acceptance checks.",
        "Produces one structured brief for: cinematic or image-to-video motion prompt.",
        "Preserves user-approved facts and assets; flags unknowns rather than inventing them."
      ],
      "howToUse": {
        "summary": "Provide the desired outcome, source material, audience, format, fixed facts/assets, and any must-not-change constraints. This Skill plans and validates; it does not claim an unverified provider execution route.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a cinematic or image-to-video motion prompt from my approved source material. Preserve the named facts and clearly identify every assumption."
          }
        ]
      },
      "output": {
        "Media type": "Structured planning brief",
        "Default quantity": "One brief",
        "Content per artifact": "Objective, inputs, fixed facts, constraints, output structure, risks, and acceptance checks",
        "Default layout": "Validated Markdown",
        "Model policy": "Agent-authored planning; no paid media generation or unverified provider call",
        "Downstream use": "$generate-video or another verified Atom selected by Router intent matching"
      },
      "similarSkills": [
        {
          "id": "narrative-video-prompt",
          "displayName": "Narrative Video Prompt",
          "difference": "Narrative Video Prompt: Structured prompt for one narrative video shot. In contrast, Cinematic Video Prompt: Cinematic or image-to-video motion prompt."
        },
        {
          "id": "short-audiovisual-prompt",
          "displayName": "Short Audiovisual Prompt",
          "difference": "Short Audiovisual Prompt: Compact single-shot audiovisual video prompt. In contrast, Cinematic Video Prompt: Cinematic or image-to-video motion prompt."
        },
        {
          "id": "cross-model-video-prompt-adapter",
          "displayName": "Cross-model Video Prompt Adapter",
          "difference": "Cross-model Video Prompt Adapter: Semantic adaptation of an existing video prompt. In contrast, Cinematic Video Prompt: Cinematic or image-to-video motion prompt."
        }
      ]
    },
    {
      "id": "clean-room",
      "displayName": "Clean Room",
      "description": "Remove room clutter without redesigning the space.",
      "category": "Image repair",
      "categoryTags": [
        "image-repair"
      ],
      "coverImage": "/skill-covers/clean-room.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "green",
      "featured": false,
      "whatThisSkillDoes": [
        "Removes a declared clutter set as one coherent cleanup result.",
        "Reconstructs floors, walls, textiles, and surfaces while preserving architecture and fixed furnishings."
      ],
      "howToUse": {
        "summary": "Provide room photo and list removable clutter versus protected furniture and decor. #### Clean a bedroom ```text Remove clothes, cables, cups, and loose papers; keep all furniture, plants, art, bedding, and room layout. ``` ## Workflow 1. Inventory removable clutter and protected structure, furniture, decor, textiles, windows, doors, and fixtures. 2. Run `gpt-image` v1.0 with `quality: \"medium\"`, `imageSize: \"2K\"`, the supplied references, the requested or source-preserving ratio, `batchCount: 1`, and one result. 3. Request one spatially coherent cleanup; forbid redesign, new furniture, staging, material changes, or relighting. 4. Inspect perspective lines, floor/wall continuation, reflections, shadows, repeated textures, furniture count, and room proportions. 5. Reject missing protected items, added decor, warped architecture, floating furniture, or over-empty staged results.",
        "promptExamples": [
          {
            "title": "Clean a bedroom",
            "prompt": "Remove clothes, cables, cups, and loose papers; keep all furniture, plants, art, bedding, and room layout."
          }
        ]
      },
      "output": {
        "Media type": "One cleaned room image",
        "Default quantity": "1",
        "Content per image": "Same room with specified clutter removed",
        "Default layout": "Source composition",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Real-estate, hospitality, and interior listings"
      },
      "similarSkills": [
        {
          "id": "remove-object",
          "displayName": "Remove Object",
          "difference": "Remove Object: Remove one object and naturally rebuild what was behind it. In contrast, Clean Room: Remove room clutter without redesigning the space."
        },
        {
          "id": "restyle-room",
          "displayName": "Restyle Room",
          "difference": "Restyle Room: Restyle a supplied room while preserving architecture, layout constraints and declared keep-items. In contrast, Clean Room: Remove room clutter without redesigning the space."
        }
      ]
    },
    {
      "id": "co-op-game-intro-generator",
      "displayName": "Co-op Game Intro Generator",
      "description": "Produce one two-player game menu and opening animation with explicit inputs, boundaries, and acceptance checks.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Independent outcome contract",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Captures the specific requested outcome and authorized asset roles.",
        "Produces a reviewable plan before any paid media route.",
        "Hands only approved atomic work to currently verified native Atoms."
      ],
      "howToUse": {
        "summary": "Provide the desired result, authorized inputs, preservation requirements, ratio/duration when relevant, and acceptance criteria.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create one two-player game menu and opening animation from my authorized assets; preserve the stated facts and show the plan before media generation."
          }
        ]
      },
      "output": {
        "Media type": "One two-player game menu and opening animation",
        "Default quantity": "1",
        "Content per artifact": "Approved plan, requested deliverable, and acceptance result",
        "Default layout": "User-requested format",
        "Model policy": "Existing verified native Atoms only",
        "Downstream use": "Review, assembly, or publication after user approval"
      }
    },
    {
      "id": "colorize-image",
      "displayName": "Colorize Image",
      "description": "Add plausible color while preserving the original photograph.",
      "category": "Image repair",
      "categoryTags": [
        "image-repair"
      ],
      "coverImage": "/skill-covers/colorize-image.png",
      "routeLabel": "GPT Image 2 contextual colorization",
      "tone": "gold",
      "featured": false,
      "whatThisSkillDoes": [
        "Uses whole-image context to infer coherent skin, fabric, object, and environment colors.",
        "Distinguishes documented color references from plausible creative inference."
      ],
      "howToUse": {
        "summary": "Provide grayscale image, known colors or references, desired realism, and disclosure needs. #### Colorize a grayscale photo ```text Colorize this grayscale 1950s-style family photo naturally; preserve faces, grain, contrast, clothing, and background. ``` ## Workflow 1. Record known colors and protected monochrome evidence; mark all unsupported colors as inferred. 2. Use `gpt-image` v1.0, GPT Image 2 Medium, source, original ratio, `batchCount: 1`. 3. Request restrained context-aware color without sharpening, restoration, face changes, object additions, or modernized styling. 4. Compare geometry, identity, tonal hierarchy, grain, damage, edges, and era plausibility. 5. Reject neon casts, uniform skin, color bleed, changed objects, cleaned damage, or false claims of historical certainty. When this Skill selects GPT Image 2, use `quality: \"medium\"` and `imageSize: \"2K\"` by default; change either only when the user explicitly requests another tier.",
        "promptExamples": [
          {
            "title": "Colorize a grayscale photo",
            "prompt": "Colorize this grayscale 1950s-style family photo naturally; preserve faces, grain, contrast, clothing, and background."
          }
        ]
      },
      "output": {
        "Media type": "One colorized image",
        "Default quantity": "1",
        "Content per image": "Source content with plausible color",
        "Default layout": "Source composition",
        "Model policy": "GPT Image 2 Medium",
        "Downstream use": "Family, archive-style, and editorial imagery"
      }
    },
    {
      "id": "combine-videos",
      "displayName": "Combine Videos",
      "description": "Combine supplied clips into one ordered video with intentional trims, transitions and audio handling; do not regenerate footage.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/combine-videos.png",
      "routeLabel": "Deterministic timeline assembly",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Builds one timeline from multiple clips with explicit order and cut points.",
        "Preserves source pixels between edits and applies only requested transitions and audio rules."
      ],
      "howToUse": {
        "summary": "Provide clips, order or narrative goal, runtime, ratio, transitions and audio policy.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Combine these three authorized clips in upload order; trim dead starts, use straight cuts, normalize to 16:9, keep audio."
          }
        ]
      },
      "output": {
        "Media type": "One MP4 video",
        "Default quantity": "1",
        "Content per video": "All requested source clips in one verified timeline",
        "Default layout": "User-requested delivery format",
        "Model policy": "Deterministic timeline assembly",
        "Downstream use": "Basic editorial assembly"
      },
      "similarSkills": [
        {
          "id": "edit-social-video",
          "displayName": "Edit Social Video",
          "difference": "Edit Social Video: Turn supplied footage into one platform-ready social video using current placement rules, a strong opening and evidence-faithful captions. In contrast, Combine Videos: Combine supplied clips into one ordered video with intentional trims, transitions and audio handling; do not regenerate footage."
        },
        {
          "id": "make-beat-synced-video",
          "displayName": "Make Beat-Synced Video",
          "difference": "Make Beat-Synced Video: Cut supplied visuals to measured music structure and verify the export. In contrast, Combine Videos: Combine supplied clips into one ordered video with intentional trims, transitions and audio handling; do not regenerate footage."
        },
        {
          "id": "make-music-video",
          "displayName": "Make Music Video",
          "difference": "Make Music Video: Cut authorized footage to one song through a validated lyric, rhythm, and visual-arc EDL. In contrast, Combine Videos: Combine supplied clips into one ordered video with intentional trims, transitions and audio handling; do not regenerate footage."
        }
      ]
    },
    {
      "id": "compose-lookbook",
      "displayName": "Compose Lookbook",
      "description": "Arrange several outfit photos into one editorial page.",
      "category": "Social and layout",
      "categoryTags": [
        "social-and-layout"
      ],
      "coverImage": "/skill-covers/compose-lookbook.png",
      "routeLabel": "GPT Image 2 editorial layout",
      "tone": "plum",
      "featured": false,
      "whatThisSkillDoes": [
        "Places multiple supplied looks into one ordered editorial page.",
        "Preserves each outfit and person while controlling crop, whitespace, captions, and reading order."
      ],
      "howToUse": {
        "summary": "Provide two to five outfit photos, ratio, visual direction, and exact copy. #### Compose a lookbook ```text Arrange these four outfit photos as one portrait lookbook page titled CITY LAYERS. ``` ## Workflow 1. Inventory each look; lock order, crop-safe regions, exact copy, and ratio. 2. Choose hero-plus-support, equal grid, staggered editorial, or contact-sheet rhythm. 3. Use `gpt-image` v1.0, GPT Image 2 Medium, all references, requested ratio, `batchCount: 1`. 4. Keep garments, faces, colors, and proportions source-faithful; render exact text once. 5. Verify every photo is visible, order and margins are clear, copy is exact, and no extra look appears. When this Skill selects GPT Image 2, use `quality: \"medium\"` and `imageSize: \"2K\"` by default; change either only when the user explicitly requests another tier.",
        "promptExamples": [
          {
            "title": "Compose a lookbook",
            "prompt": "Arrange these four outfit photos as one portrait lookbook page titled CITY LAYERS."
          }
        ]
      },
      "output": {
        "Media type": "One lookbook page image",
        "Default quantity": "1",
        "Content per image": "All supplied looks in distinct regions",
        "Default layout": "Editorial multi-photo page",
        "Model policy": "GPT Image 2 Medium",
        "Downstream use": "Fashion decks, social posts, and line sheets"
      },
      "similarSkills": [
        {
          "id": "photo-collage",
          "displayName": "Photo Collage",
          "difference": "Photo Collage: Arrange original photos into one intentional collage. In contrast, Compose Lookbook: Arrange several outfit photos into one editorial page."
        },
        {
          "id": "create-social-carousel",
          "displayName": "Create Social Carousel",
          "difference": "Create Social Carousel: Create a coherent mobile-first social carousel as separately generated ordered pages. In contrast, Compose Lookbook: Arrange several outfit photos into one editorial page."
        },
        {
          "id": "create-image-deck",
          "displayName": "Create Image Deck",
          "difference": "Create Image Deck: Plan, generate, inspect, and package a consistent image-first deck. In contrast, Compose Lookbook: Arrange several outfit photos into one editorial page."
        }
      ]
    },
    {
      "id": "correct-video-color",
      "displayName": "Correct Video Color",
      "description": "Correct white balance, exposure and shot-to-shot consistency without changing content or creative look.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/correct-video-color.png",
      "routeLabel": "Measured deterministic grade; MiniMax H3 only when temporal rewriting is required",
      "tone": "orange",
      "featured": false,
      "whatThisSkillDoes": [
        "Restores plausible neutrals, skin tones, highlight detail and shadow separation over time.",
        "Distinguishes technical correction from an optional creative grade."
      ],
      "howToUse": {
        "summary": "Provide footage, lighting issue, neutral or skin references, protected brand colors and delivery space.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Correct the mixed green fluorescent and daylight cast; keep skin natural and preserve the blue jacket exactly."
          }
        ]
      },
      "output": {
        "Media type": "One MP4 video",
        "Default quantity": "1",
        "Content per video": "The same footage with technically balanced color",
        "Default layout": "User-requested delivery format",
        "Model policy": "Deterministic measured grading/LUT first; MiniMax H3 only for temporal correction that requires video rewriting",
        "Downstream use": "Video finishing"
      },
      "similarSkills": [
        {
          "id": "add-video-effect",
          "displayName": "Add Video Effect",
          "difference": "Add Video Effect: Add one specified effect to a supplied video at a defined time and region while preserving underlying footage. In contrast, Correct Video Color: Correct white balance, exposure and shot-to-shot consistency without changing content or creative look."
        },
        {
          "id": "restyle-video",
          "displayName": "Restyle Video",
          "difference": "Restyle Video: Transform the visual treatment of a supplied video while retaining timing, motion, subjects and continuity. In contrast, Correct Video Color: Correct white balance, exposure and shot-to-shot consistency without changing content or creative look."
        },
        {
          "id": "upscale-video",
          "displayName": "Upscale Video",
          "difference": "Upscale Video: Increase supplied video resolution and clarity while preserving timing, content, grain intent and natural detail. In contrast, Correct Video Color: Correct white balance, exposure and shot-to-shot consistency without changing content or creative look."
        }
      ]
    },
    {
      "id": "create-animal",
      "displayName": "Create Animal",
      "description": "Generate one specified real or original animal in an anatomically and ecologically coherent scene.",
      "category": "Character and brand",
      "categoryTags": [
        "character-and-brand"
      ],
      "coverImage": "/skill-covers/create-animal.png",
      "routeLabel": "Z-Image photorealistic animal generation",
      "tone": "green",
      "featured": false,
      "whatThisSkillDoes": [
        "Creates a real species, plausible hybrid or original animal from a concrete description.",
        "Matches anatomy, habitat, behavior, lens and lighting instead of relying on a random-animal prompt."
      ],
      "howToUse": {
        "summary": "Specify species or original anatomy, age, behavior, habitat, realism, framing and mood.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create one red panda crossing a mossy branch after rain; candid wildlife photography, accurate paws and tail, 3:2."
          }
        ]
      },
      "output": {
        "Media type": "One animal image",
        "Default quantity": "1",
        "Content per image": "One animal or coherent group in a plausible scene",
        "Default layout": "User-requested or source-preserving format",
        "Model policy": "Z-Image by default for pure photorealistic text-to-image; GPT Image 2 Medium only when its documented hard constraints apply",
        "Downstream use": "Wildlife visuals and original creature concepts"
      }
    },
    {
      "id": "create-avatar",
      "displayName": "Create Avatar",
      "description": "Create one small-size-readable profile avatar from an authorized portrait or fictional brief.",
      "category": "Character and brand",
      "categoryTags": [
        "character-and-brand"
      ],
      "coverImage": "/skill-covers/create-avatar.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Creates a centered profile image whose face or defining symbol remains readable at icon size.",
        "Preserves authorized subject traits without treating avatar style as a generic filter."
      ],
      "howToUse": {
        "summary": "Provide an authorized portrait or fictional description, intended platform, crop and one chosen style.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Turn this authorized portrait into a clean 1:1 flat editorial avatar; preserve face shape, hair and glasses; simple coral background."
          }
        ]
      },
      "output": {
        "Media type": "One avatar image",
        "Default quantity": "1",
        "Content per image": "One square profile-ready avatar",
        "Default layout": "User-requested or source-preserving format",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Profile pictures and account icons"
      }
    },
    {
      "id": "create-cad",
      "displayName": "Create CAD",
      "description": "Create and validate one parametric CAD part, returning STEP as the primary artifact rather than a render-only image.",
      "category": "Space and diagrams",
      "categoryTags": [
        "space-and-diagrams"
      ],
      "coverImage": "/skill-covers/create-cad.png",
      "routeLabel": "STEP-first parametric CAD workflow",
      "tone": "slate",
      "featured": false,
      "whatThisSkillDoes": [
        "Builds dimension-driven part geometry and exports a real STEP model with reproducible source.",
        "Inspects bounding box, volume, topology and named features; preview imagery is secondary evidence."
      ],
      "howToUse": {
        "summary": "Provide units, dimensions, functional features, tolerances, references and required exports.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a STEP-first L bracket: 80×50×5 mm, two 6 mm base holes, one 8 mm upright slot, 3 mm fillets."
          }
        ]
      },
      "output": {
        "Media type": "One STEP model plus preview",
        "Default quantity": "1",
        "Content per image": "One validated parametric part",
        "Default layout": "Source-preserving or dimension-defined format",
        "Model policy": "STEP-first parametric CAD workflow",
        "Downstream use": "Mechanical design handoff, not engineering certification"
      }
    },
    {
      "id": "create-character",
      "displayName": "Create Character",
      "description": "Build one canonical identity, then derive seven consistent character assets from it.",
      "category": "Character and brand",
      "categoryTags": [
        "character-and-brand"
      ],
      "coverImage": "/skill-covers/create-character.png",
      "routeLabel": "Eight-run GPT Image 2 character production pack",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Turns a brief or authorized identity reference into one reusable original character.",
        "Establishes the character with one canonical multi-panel design sheet before any derived image is submitted.",
        "Produces one canonical identity asset by default, then offers seven identity-bound production assets as an optional confirmed expansion.",
        "Replaces the former standalone `character-reference-sheet` generation workflow."
      ],
      "howToUse": {
        "summary": "Provide the role, species, apparent age, world, body and face anchors, hair, wardrobe construction, palette, signature features or props, personality, visual style, and any authorized references. Provide two scene briefs when their content matters; otherwise derive two distinct story-relevant environments from the character's world.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a complete character pack for Lin, a tired 24-year-old night courier with a blunt black bob, amber raincoat, red parcel bag, and guarded expression. Use a graphic Chinese webcomic style. Scene 1 is a rain-soaked parcel depot; scene 2 is a quiet rooftop at dawn."
          }
        ]
      },
      "output": {
        "Media type": "Image pack",
        "Default quantity": "1 canonical sheet; optionally expand to 8 total separate images only after post-QA user confirmation; `batchCount: 1` for each submitted task",
        "Content": "Canonical design sheet, full-body front, full-body back, head close-up, lighting study, final-look portrait, scene 1, and scene 2",
        "Default layout": "One canonical multi-panel sheet plus seven separate task-specific images",
        "Model policy": "GPT Image 2 Medium/2K for all eight tasks",
        "Downstream use": "Canonical identity and production references for comics, storyboards, images, and video"
      },
      "similarSkills": [
        {
          "id": "casting",
          "displayName": "Casting",
          "difference": "Casting: Select and approve a screen-ready Chinese character face before deriving optional studio assets. In contrast, Create Character: Build one canonical identity, then derive seven consistent character assets from it."
        },
        {
          "id": "create-npc",
          "displayName": "Create NPC",
          "difference": "Create NPC: Create one original non-player character image whose occupation, faction and gameplay role are visually legible. In contrast, Create Character: Build one canonical identity, then derive seven consistent character assets from it."
        }
      ]
    },
    {
      "id": "create-custom-skill",
      "displayName": "Create Custom Skill",
      "description": "Turn a reusable workflow into a checked, user-owned local Agent Skill.",
      "category": "Platform tooling",
      "categoryTags": [
        "platform-tooling"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Isolated user-owned Skill authoring",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Creates one custom `SKILL.md` from a new requirement, a completed conversation workflow, or a requested revision.",
        "Keeps unfinished work outside every Agent's auto-discovered Skill directory so a partial draft cannot trigger accidentally.",
        "Distinguishes related installed Skills with relationship scores and explicit two-way boundaries rather than merging similar outcomes.",
        "Checks the completed draft itself and can install it locally after showing the destination and receiving explicit user confirmation.",
        "Keeps official package submission separate; maintainer intake and independent review begin only when the user asks to upload or contribute the Skill."
      ],
      "howToUse": {
        "summary": "Provide the reusable outcome or existing Skill, representative requests, inputs, deliverable, constraints, common corrections, and target Agent when known. Existing conversation evidence should be reused before asking questions already answered.",
        "promptExamples": [
          {
            "title": "Create from a workflow",
            "prompt": "把我们刚才做的商品发布流程保存成我自己的 Skill，以后换一个商品也能复用。"
          },
          {
            "title": "Create from a new idea",
            "prompt": "Create a custom Skill that turns my weekly campaign brief into three channel-specific creative directions, but does not generate media."
          }
        ]
      },
      "output": {
        "Media type": "User-owned Agent Skill draft",
        "Default quantity": "One isolated Skill directory plus one user-custom intake record",
        "Content per artifact": "`SKILL.md`, only necessary resources, trigger tests, walkthrough evidence, and local check evidence",
        "Default layout": "Agent Skills-compatible folder outside runtime discovery until approval",
        "Model policy": "Agent-authored platform tooling; no paid media generation",
        "Downstream use": "User-approved local installation or separate maintainer intake for an official-package proposal"
      }
    },
    {
      "id": "create-flag",
      "displayName": "Create Flag",
      "description": "Design one original symbolically coherent flag that remains recognizable at distance and in flat form.",
      "category": "Character and brand",
      "categoryTags": [
        "character-and-brand"
      ],
      "coverImage": "/skill-covers/create-flag.png",
      "routeLabel": "GPT Image 2 flag generation",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Translates place, organization or fictional faction values into simple flag geometry and colors.",
        "Separates the flat flag design from optional fabric presentation and tests reversibility and distance."
      ],
      "howToUse": {
        "summary": "Provide entity, meaning, symbolism, color constraints, proportions and flat or fabric presentation.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Design one 2:3 flag for fictional Port Meridian using navy, white and coral; a simple lighthouse-path symbol; flat front view."
          }
        ]
      },
      "output": {
        "Media type": "One flag design",
        "Default quantity": "1",
        "Content per image": "One original flag in a clearly reviewable presentation",
        "Default layout": "User-requested or source-preserving format",
        "Model policy": "GPT Image 2 Medium/2K for controlled flat geometry and one selected output",
        "Downstream use": "Organizations, fictional worlds and civic concepts"
      }
    },
    {
      "id": "create-image-deck",
      "displayName": "Create Image Deck",
      "description": "Plan, generate, inspect, and package a consistent image-first deck.",
      "category": "Layout and design",
      "categoryTags": [
        "layout-and-design"
      ],
      "coverImage": "/skill-covers/create-image-deck.png",
      "routeLabel": "Image-first presentation production",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Converts approved content into an ordered slide manifest with one communication job per page.",
        "Locks a reusable visual grammar before generating the full deck.",
        "Generates and validates each page independently, then packages only accepted assets."
      ],
      "howToUse": {
        "summary": "Provide the source content, audience, purpose, language, slide count or scope, target ratio, delivery format, required facts/text, and any authorized brand or style references. State whether text must remain editable.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Turn this six-section lesson into an eight-slide 16:9 image-first deck for new hires. Keep the three supplied numbers exact, use our approved colors, and deliver editable headings over illustrated plates."
          }
        ]
      },
      "output": {
        "Media type": "Image-first presentation deck plus inspectable source assets",
        "Default quantity": "One deck with the requested exact page count",
        "Content per artifact": "One core claim and one accepted visual composition per slide",
        "Default layout": "16:9 unless the user or destination requires another ratio",
        "Model policy": "GPT Image 2 Medium/2K, one page per operation; deterministic packaging after acceptance",
        "Downstream use": "Presentation, teaching, pitching, review, or export through the active presentation tooling"
      },
      "similarSkills": [
        {
          "id": "compose-lookbook",
          "displayName": "Compose Lookbook",
          "difference": "Compose Lookbook: Arrange several outfit photos into one editorial page. In contrast, Create Image Deck: Plan, generate, inspect, and package a consistent image-first deck."
        },
        {
          "id": "photo-collage",
          "displayName": "Photo Collage",
          "difference": "Photo Collage: Arrange original photos into one intentional collage. In contrast, Create Image Deck: Plan, generate, inspect, and package a consistent image-first deck."
        },
        {
          "id": "create-social-carousel",
          "displayName": "Create Social Carousel",
          "difference": "Create Social Carousel: Create a coherent mobile-first social carousel as separately generated ordered pages. In contrast, Create Image Deck: Plan, generate, inspect, and package a consistent image-first deck."
        }
      ]
    },
    {
      "id": "create-logo",
      "displayName": "Create Logo",
      "description": "Design one selected original logo mark or lockup from a brand brief, after concept reduction and application checks.",
      "category": "Character and brand",
      "categoryTags": [
        "character-and-brand"
      ],
      "coverImage": "/skill-covers/create-logo.png",
      "routeLabel": "GPT Image 2 logo generation",
      "tone": "red",
      "featured": false,
      "whatThisSkillDoes": [
        "Reduces brand strategy to one ownable symbol, wordmark, monogram or lockup.",
        "Checks simplicity, small-size legibility, one-color behavior and distance from famous marks."
      ],
      "howToUse": {
        "summary": "Provide brand name, offering, audience, positioning, personality, required text and applications.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create one final logo for NORTHLINE COFFEE: a minimal N plus mountain-path symbol, black and cream, scalable and original."
          }
        ]
      },
      "output": {
        "Media type": "One selected logo image",
        "Default quantity": "1",
        "Content per image": "One final logo architecture on a plain background",
        "Default layout": "User-requested or source-preserving format",
        "Model policy": "GPT Image 2 Medium/2K for final logo geometry and readable brand text",
        "Downstream use": "Brand identity selection and refinement"
      },
      "similarSkills": [
        {
          "id": "create-mascot-logo",
          "displayName": "Create Mascot Logo",
          "difference": "Create Mascot Logo: Create a compact, cute mascot mark with controlled silhouette, color, and separately labeled directions. In contrast, Create Logo: Design one selected original logo mark or lockup from a brand brief, after concept reduction and application checks."
        }
      ]
    },
    {
      "id": "create-mascot-logo",
      "displayName": "Create Mascot Logo",
      "description": "Create a compact, cute mascot mark with controlled silhouette, color, and separately labeled directions.",
      "category": "Character and brand",
      "categoryTags": [
        "character-and-brand"
      ],
      "coverImage": "/skill-covers/create-mascot-logo.png",
      "routeLabel": "GPT Image 2 mascot-logo generation",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Converts product purpose and personality into three concise mascot directions before generation.",
        "Generates simple square candidates with a rounded small-size silhouette and a controlled three-color contract.",
        "Keeps each candidate as a separate asset with its own prompt, operation record, and label."
      ],
      "howToUse": {
        "summary": "Provide the product or brand purpose, audience, personality, mascot subject if known, palette constraints, and desired candidate count.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create six simple mascot-logo candidates for a calm privacy app: use a friendly rounded ghost, a deep navy background, and no text."
          }
        ]
      },
      "output": {
        "Media type": "Separate square mascot-logo images plus a labeled receipt",
        "Default quantity": "6 after direction approval",
        "Content per image": "One simplified mascot on one solid full-canvas background",
        "Default layout": "Independent 1:1 assets, never a grid or contact sheet",
        "Model policy": "GPT Image 2 Medium/2K, one candidate per run",
        "Downstream use": "Mascot selection, brand-system refinement, and small-size application testing"
      },
      "similarSkills": [
        {
          "id": "create-logo",
          "displayName": "Create Logo",
          "difference": "Create Logo: Design one selected original logo mark or lockup from a brand brief, after concept reduction and application checks. In contrast, Create Mascot Logo: Create a compact, cute mascot mark with controlled silhouette, color, and separately labeled directions."
        }
      ]
    },
    {
      "id": "create-npc",
      "displayName": "Create NPC",
      "description": "Create one original non-player character image whose occupation, faction and gameplay role are visually legible.",
      "category": "Character and brand",
      "categoryTags": [
        "character-and-brand"
      ],
      "coverImage": "/skill-covers/create-npc.png",
      "routeLabel": "GPT Image 2 game-character concept",
      "tone": "violet",
      "featured": false,
      "whatThisSkillDoes": [
        "Translates gameplay function, world, faction and personality into one NPC concept.",
        "Keeps the character original and separates visual storytelling from a full character-sheet workflow."
      ],
      "howToUse": {
        "summary": "Provide game genre, NPC role, faction, personality, equipment, environment and art direction.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create one original fantasy harbor quartermaster with weathered clothing, inventory ledger and brass whistle; painterly game concept art."
          }
        ]
      },
      "output": {
        "Media type": "One NPC concept image",
        "Default quantity": "1",
        "Content per image": "One original NPC with role-defining context",
        "Default layout": "User-requested or source-preserving format",
        "Model policy": "GPT Image 2 game-character concept",
        "Downstream use": "Games and interactive fiction"
      },
      "similarSkills": [
        {
          "id": "casting",
          "displayName": "Casting",
          "difference": "Casting: Select and approve a screen-ready Chinese character face before deriving optional studio assets. In contrast, Create NPC: Create one original non-player character image whose occupation, faction and gameplay role are visually legible."
        },
        {
          "id": "create-character",
          "displayName": "Create Character",
          "difference": "Create Character: Build one canonical identity, then derive seven consistent character assets from it. In contrast, Create NPC: Create one original non-player character image whose occupation, faction and gameplay role are visually legible."
        }
      ]
    },
    {
      "id": "create-social-carousel",
      "displayName": "Create Social Carousel",
      "description": "Create a coherent mobile-first social carousel as separately generated ordered pages.",
      "category": "Social and layout",
      "categoryTags": [
        "social-and-layout"
      ],
      "coverImage": "/skill-covers/create-social-carousel.png",
      "routeLabel": "GPT Image 2 ordered carousel",
      "tone": "amber",
      "featured": false,
      "whatThisSkillDoes": [
        "Turns one message into a cover, ordered content beats, and a closing CTA without repeating the same claim.",
        "Locks a visual master before generating separately numbered pages with shared layout, palette, typography intent, and subject anchors.",
        "Inspects both each page and the complete swipe sequence for exact count, legibility, continuity, and narrative progression."
      ],
      "howToUse": {
        "summary": "Provide platform, topic, audience, goal, language, page count, exact required copy, brand assets, and desired style. If the platform is named, verify its current official size and safe-area guidance before generation.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a seven-page Xiaohongshu carousel for first-time renters about avoiding deposit disputes. Use concise Chinese copy, warm editorial illustrations, and end with a save-and-share CTA."
          }
        ]
      },
      "output": {
        "Media type": "Ordered social carousel page images plus page manifest and operation receipt",
        "Default quantity": "6–8 pages; exact requested count wins",
        "Content per image": "One numbered page with one primary communication job",
        "Default layout": "Current platform ratio and safe zones; 3:4 for explicit Xiaohongshu placement",
        "Model policy": "GPT Image 2 Medium/2K, one page per operation",
        "Downstream use": "Human review and manual platform publishing"
      },
      "similarSkills": [
        {
          "id": "compose-lookbook",
          "displayName": "Compose Lookbook",
          "difference": "Compose Lookbook: Arrange several outfit photos into one editorial page. In contrast, Create Social Carousel: Create a coherent mobile-first social carousel as separately generated ordered pages."
        },
        {
          "id": "photo-collage",
          "displayName": "Photo Collage",
          "difference": "Photo Collage: Arrange original photos into one intentional collage. In contrast, Create Social Carousel: Create a coherent mobile-first social carousel as separately generated ordered pages."
        },
        {
          "id": "create-image-deck",
          "displayName": "Create Image Deck",
          "difference": "Create Image Deck: Plan, generate, inspect, and package a consistent image-first deck. In contrast, Create Social Carousel: Create a coherent mobile-first social carousel as separately generated ordered pages."
        }
      ]
    },
    {
      "id": "create-white-background-product-mockup",
      "displayName": "White Background Product Mockup",
      "description": "Create product, flat-lay, and ghost-mannequin mockups without identity drift.",
      "category": "Commercial image",
      "categoryTags": [
        "commercial-image"
      ],
      "coverImage": "/skill-covers/create-white-background-product-mockup.png",
      "routeLabel": "Model-routed product mockups",
      "tone": "peach",
      "featured": false,
      "whatThisSkillDoes": [
        "Extracts only the mockup mode, product, output, framing, and fidelity constraints that change generation.",
        "Routes an available foundation image model first; treats `flat-lay`, `ai-ghost-mannequin-generator`, and other specialized agents as optional, replaceable accelerators.",
        "Compiles a photography brief from the user-supplied default Prompt, falling back to a documented API default only when the user has not supplied one.",
        "Generates one product image per run, checks identity and white-background requirements, and retries only the failed property."
      ],
      "howToUse": {
        "summary": "Tell the agent whether you want a product mockup, flat lay, ghost mannequin, or sketch-to-garment result, then attach a reference or briefly describe the product.",
        "promptExamples": [
          {
            "title": "Create from a description",
            "prompt": "Create a clean white-background mockup of a warm camel-brown square-toe loafer."
          },
          {
            "title": "Create from a product reference",
            "prompt": "Turn this serum bottle photo into a white-background product mockup while keeping the bottle, cap, and label unchanged."
          },
          {
            "title": "Create an apparel flat lay",
            "prompt": "Create a clean white-background flat lay of this garment with no model or hanger."
          },
          {
            "title": "Create a ghost-mannequin mockup",
            "prompt": "Turn this garment photo into a white-background ghost-mannequin image while preserving its shape and details."
          },
          {
            "title": "Turn a clothing sketch into a product mockup",
            "prompt": "Turn this clothing sketch into a realistic white-background garment mockup without changing the design."
          }
        ]
      },
      "output": {
        "Media type": "One product mockup image and a compact acceptance record",
        "Default quantity": "1 separate image",
        "Content per image": "One product or one natural pair/set at one view",
        "Default layout": "Centered 1:1 catalog composition on white",
        "Video output": "No",
        "Model policy": "Route the best current foundation image model first; use specialized product/flat-lay/ghost agents only while verified and useful",
        "Downstream use": "Catalogs, product pages, marketplace-main-image drafts, and commercial layout handoff"
      },
      "similarSkills": [
        {
          "id": "ai-product",
          "displayName": "AI Product",
          "difference": "AI Product: Place a real product into a new commercial scene. In contrast, White Background Product Mockup: Create product, flat-lay, and ghost-mannequin mockups without identity drift."
        },
        {
          "id": "product-packaging",
          "displayName": "Product Packaging",
          "difference": "Product Packaging: Turn product references into a structured packaging concept board. In contrast, White Background Product Mockup: Create product, flat-lay, and ghost-mannequin mockups without identity drift."
        }
      ]
    },
    {
      "id": "cross-model-video-prompt-adapter",
      "displayName": "Cross-model Video Prompt Adapter",
      "description": "Semantic adaptation of an existing video prompt.",
      "category": "Media workflows",
      "categoryTags": [
        "media-workflows"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Agent-authored structured brief",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Freezes the request, approved facts, source assets, constraints, and acceptance checks.",
        "Produces one structured brief for: semantic adaptation of an existing video prompt.",
        "Preserves user-approved facts and assets; flags unknowns rather than inventing them."
      ],
      "howToUse": {
        "summary": "Provide the desired outcome, source material, audience, format, fixed facts/assets, and any must-not-change constraints. This Skill plans and validates; it does not claim an unverified provider execution route.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a semantic adaptation of an existing video prompt from my approved source material. Preserve the named facts and clearly identify every assumption."
          }
        ]
      },
      "output": {
        "Media type": "Structured planning brief",
        "Default quantity": "One brief",
        "Content per artifact": "Objective, inputs, fixed facts, constraints, output structure, risks, and acceptance checks",
        "Default layout": "Validated Markdown",
        "Model policy": "Agent-authored planning; no paid media generation or unverified provider call",
        "Downstream use": "$generate-video or another verified Atom selected by Router intent matching"
      },
      "similarSkills": [
        {
          "id": "cinematic-video-prompt",
          "displayName": "Cinematic Video Prompt",
          "difference": "Cinematic Video Prompt: Cinematic or image-to-video motion prompt. In contrast, Cross-model Video Prompt Adapter: Semantic adaptation of an existing video prompt."
        },
        {
          "id": "narrative-video-prompt",
          "displayName": "Narrative Video Prompt",
          "difference": "Narrative Video Prompt: Structured prompt for one narrative video shot. In contrast, Cross-model Video Prompt Adapter: Semantic adaptation of an existing video prompt."
        },
        {
          "id": "short-audiovisual-prompt",
          "displayName": "Short Audiovisual Prompt",
          "difference": "Short Audiovisual Prompt: Compact single-shot audiovisual video prompt. In contrast, Cross-model Video Prompt Adapter: Semantic adaptation of an existing video prompt."
        }
      ]
    },
    {
      "id": "data-driven-ad-creative-video",
      "displayName": "Data-driven Ad Creative Video",
      "description": "Controlled ad-video variants from approved tabular data.",
      "category": "Media workflows",
      "categoryTags": [
        "media-workflows"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Agent-authored structured brief",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Freezes the request, approved facts, source assets, constraints, and acceptance checks.",
        "Produces one structured brief for: controlled ad-video variants from approved tabular data.",
        "Preserves user-approved facts and assets; flags unknowns rather than inventing them."
      ],
      "howToUse": {
        "summary": "Provide the desired outcome, source material, audience, format, fixed facts/assets, and any must-not-change constraints. This Skill plans and validates; it does not claim an unverified provider execution route.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a controlled ad-video variants from approved tabular data from my approved source material. Preserve the named facts and clearly identify every assumption."
          }
        ]
      },
      "output": {
        "Media type": "Structured planning brief",
        "Default quantity": "One brief",
        "Content per artifact": "Objective, inputs, fixed facts, constraints, output structure, risks, and acceptance checks",
        "Default layout": "Validated Markdown",
        "Model policy": "Agent-authored planning; no paid media generation or unverified provider call",
        "Downstream use": "$generate-video or another verified Atom selected by Router intent matching"
      }
    },
    {
      "id": "decorative-print-short",
      "displayName": "Decorative Print Short",
      "description": "Produce an elegant flat-print short with paired wide and close shots.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Decorative print paired-shot production",
      "tone": "orange",
      "featured": false,
      "whatThisSkillDoes": [
        "Plans generic decorative print art direction without copying protected designs.",
        "Creates key art and paired wide/close action shots with optional native SFX."
      ],
      "howToUse": {
        "summary": "Provide theme, ratio, duration, authorized references, and any requested audio. Canvas plan storage is used only when supported. #### Example ```text 做一支 16:9 装饰印刷风茶席短片：每个场景先全景再手部近景，只要茶水与瓷器轻响。 ``` ## Workflow 1. Lock generic line, flat-color, ornament, and material rules; exclude protected patterns and logos. 2. Approve scene key art and two-shot order before video. 3. Generate approved shots through `$generate-video`, persist per-shot keys, then use `$combine-videos` only for requested assembly. 4. Check print consistency, one action per close shot, hard-cut order, and no unrequested audio/text.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "做一支 16:9 装饰印刷风茶席短片：每个场景先全景再手部近景，只要茶水与瓷器轻响。"
          }
        ]
      },
      "output": {
        "Media type": "Approved plan, key art, and requested MP4 clips or assembly",
        "Default quantity": "One short sequence",
        "Content per video": "Wide establish plus close follow-up per scene",
        "Default layout": "User-requested ratio",
        "Model policy": "Current image and catalog-selected video routes; no standalone audio claim",
        "Downstream use": "Decorative creative advertising"
      }
    },
    {
      "id": "detail-page-skill-course",
      "displayName": "Skill Course Detail Page",
      "description": "Produce one skill-teaching course conversion page plan with explicit inputs, boundaries, and acceptance checks.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Independent outcome contract",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Captures the specific requested outcome and authorized asset roles.",
        "Produces a reviewable plan before any paid media route.",
        "Hands only approved atomic work to currently verified native Atoms."
      ],
      "howToUse": {
        "summary": "Provide the desired result, authorized inputs, preservation requirements, ratio/duration when relevant, and acceptance criteria.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create one skill-teaching course conversion page plan from my authorized assets; preserve the stated facts and show the plan before media generation."
          }
        ]
      },
      "output": {
        "Media type": "One skill-teaching course conversion page plan",
        "Default quantity": "1",
        "Content per artifact": "Approved plan, requested deliverable, and acceptance result",
        "Default layout": "User-requested format",
        "Model policy": "Existing verified native Atoms only",
        "Downstream use": "Review, assembly, or publication after user approval"
      }
    },
    {
      "id": "develop-story",
      "displayName": "Develop Story",
      "description": "Build or repair a story foundation before medium-specific production.",
      "category": "Narrative and comics",
      "categoryTags": [
        "narrative-and-comics"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Agent-authored story development package",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Diagnoses whether the current need is foundation, story-relevant world pressure, causal beats, scenes, or structural revision.",
        "Builds a protagonist whose want, need, false belief, history, pressure, choices, and stakes drive the plot.",
        "Produces stage outputs that can hand off cleanly to prose, short drama, comics, or film planning."
      ],
      "howToUse": {
        "summary": "Provide the idea or draft, audience, genre, target medium/length, fixed facts, desired emotional effect, ending constraints, and whether you want development only or selected scene drafts.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Develop this sci-fi premise for a feature: a climate archivist discovers tomorrow's weather records are being rewritten. Give me three premise directions, select the strongest, then build the protagonist, ending direction, causal beats, and scene briefs."
          }
        ]
      },
      "output": {
        "Media type": "Structured story-development text package",
        "Default quantity": "One package at the requested development stage",
        "Content per artifact": "Diagnosis, decisions, core, ending, protagonist, world pressure, causal beats, scene briefs, and revision priorities",
        "Default layout": "Concise Markdown or JSON with stable beat/scene IDs",
        "Model policy": "Agent-authored; no paid media generation",
        "Downstream use": "Prose drafting, short drama, comics, film storyboards, and adaptation"
      },
      "similarSkills": [
        {
          "id": "plan-comic-storyboard",
          "displayName": "Plan Comic Storyboard",
          "difference": "Plan Comic Storyboard: Convert a story into a validated page-by-page comic production manifest. In contrast, Develop Story: Build or repair a story foundation before medium-specific production."
        },
        {
          "id": "render-comic-page",
          "displayName": "Render Comic Page",
          "difference": "Render Comic Page: Render one storyboarded comic page with character, style, panel, and dialogue continuity. In contrast, Develop Story: Build or repair a story foundation before medium-specific production."
        },
        {
          "id": "plan-film-storyboard",
          "displayName": "Plan Film Storyboard",
          "difference": "Plan Film Storyboard: Turn narrative material into timed atomic film shots with continuity and generation handoffs. In contrast, Develop Story: Build or repair a story foundation before medium-specific production."
        }
      ]
    },
    {
      "id": "digital-product-promo-generator",
      "displayName": "Digital Product Promo Generator",
      "description": "Produce one authentic digital-product promo plan and video with explicit inputs, boundaries, and acceptance checks.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Independent outcome contract",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Captures the specific requested outcome and authorized asset roles.",
        "Produces a reviewable plan before any paid media route.",
        "Hands only approved atomic work to currently verified native Atoms."
      ],
      "howToUse": {
        "summary": "Provide the desired result, authorized inputs, preservation requirements, ratio/duration when relevant, and acceptance criteria.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create one authentic digital-product promo plan and video from my authorized assets; preserve the stated facts and show the plan before media generation."
          }
        ]
      },
      "output": {
        "Media type": "One authentic digital-product promo plan and video",
        "Default quantity": "1",
        "Content per artifact": "Approved plan, requested deliverable, and acceptance result",
        "Default layout": "User-requested format",
        "Model policy": "Existing verified native Atoms only",
        "Downstream use": "Review, assembly, or publication after user approval"
      },
      "similarSkills": [
        {
          "id": "brand-promo-video-generator",
          "displayName": "Brand Promo Video Generator",
          "difference": "Brand Promo Video Generator: Produce one authenticity-checked promotional short for a brand, app, website, shop, service, or launch. In contrast, Digital Product Promo Generator: Produce one authentic digital-product promo plan and video with explicit inputs, boundaries, and acceptance checks."
        }
      ]
    },
    {
      "id": "dodge-game-video-generator",
      "displayName": "Dodge Game Video Generator",
      "description": "Produce one character-led dodge-game reaction short with explicit inputs, boundaries, and acceptance checks.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Independent outcome contract",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Captures the specific requested outcome and authorized asset roles.",
        "Produces a reviewable plan before any paid media route.",
        "Hands only approved atomic work to currently verified native Atoms."
      ],
      "howToUse": {
        "summary": "Provide the desired result, authorized inputs, preservation requirements, ratio/duration when relevant, and acceptance criteria.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create one character-led dodge-game reaction short from my authorized assets; preserve the stated facts and show the plan before media generation."
          }
        ]
      },
      "output": {
        "Media type": "One character-led dodge-game reaction short",
        "Default quantity": "1",
        "Content per artifact": "Approved plan, requested deliverable, and acceptance result",
        "Default layout": "User-requested format",
        "Model policy": "Existing verified native Atoms only",
        "Downstream use": "Review, assembly, or publication after user approval"
      }
    },
    {
      "id": "dot-matrix-brand-wordmark-motion",
      "displayName": "Dot Matrix Brand Wordmark Motion",
      "description": "Produce one exact brand wordmark dot-matrix motion with explicit inputs, boundaries, and acceptance checks.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Independent outcome contract",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Captures the specific requested outcome and authorized asset roles.",
        "Produces a reviewable plan before any paid media route.",
        "Hands only approved atomic work to currently verified native Atoms."
      ],
      "howToUse": {
        "summary": "Provide the desired result, authorized inputs, preservation requirements, ratio/duration when relevant, and acceptance criteria.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create one exact brand wordmark dot-matrix motion from my authorized assets; preserve the stated facts and show the plan before media generation."
          }
        ]
      },
      "output": {
        "Media type": "One exact brand wordmark dot-matrix motion",
        "Default quantity": "1",
        "Content per artifact": "Approved plan, requested deliverable, and acceptance result",
        "Default layout": "User-requested format",
        "Model policy": "Existing verified native Atoms only",
        "Downstream use": "Review, assembly, or publication after user approval"
      },
      "similarSkills": [
        {
          "id": "brand-stream-mg",
          "displayName": "Brand Stream MG",
          "difference": "Brand Stream MG: Produce one logo-led neon brand motion with explicit inputs, boundaries, and acceptance checks. In contrast, Dot Matrix Brand Wordmark Motion: Produce one exact brand wordmark dot-matrix motion with explicit inputs, boundaries, and acceptance checks."
        },
        {
          "id": "make-video-intro",
          "displayName": "Make Video Intro",
          "difference": "Make Video Intro: Create one short reusable branded intro with exact identity, legible title and a clean transition into program content. In contrast, Dot Matrix Brand Wordmark Motion: Produce one exact brand wordmark dot-matrix motion with explicit inputs, boundaries, and acceptance checks."
        },
        {
          "id": "poster-motion",
          "displayName": "Poster Motion",
          "difference": "Poster Motion: Animate an uploaded poster into one readable, full-frame motion poster. In contrast, Dot Matrix Brand Wordmark Motion: Produce one exact brand wordmark dot-matrix motion with explicit inputs, boundaries, and acceptance checks."
        }
      ]
    },
    {
      "id": "edit-social-video",
      "displayName": "Edit Social Video",
      "description": "Turn supplied footage into one platform-ready social video using current placement rules, a strong opening and evidence-faithful captions.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/edit-social-video.png",
      "routeLabel": "Platform-aware social edit",
      "tone": "red",
      "featured": false,
      "whatThisSkillDoes": [
        "Selects and orders the best moments for a named social placement and runtime.",
        "Builds hook, pacing, safe-zone captions, sound and ending around supplied footage."
      ],
      "howToUse": {
        "summary": "Provide footage, platform and placement, audience, objective, runtime, exact claims and caption language.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Edit these clips into one 20-second vertical Reel for a ceramic studio; hook in first 2 seconds; exact captions."
          }
        ]
      },
      "output": {
        "Media type": "One MP4 video",
        "Default quantity": "1",
        "Content per video": "One platform-specific edit from supplied footage",
        "Default layout": "User-requested delivery format",
        "Model policy": "Platform-aware social edit",
        "Downstream use": "Reels, Shorts, TikTok and social placements"
      },
      "similarSkills": [
        {
          "id": "combine-videos",
          "displayName": "Combine Videos",
          "difference": "Combine Videos: Combine supplied clips into one ordered video with intentional trims, transitions and audio handling; do not regenerate footage. In contrast, Edit Social Video: Turn supplied footage into one platform-ready social video using current placement rules, a strong opening and evidence-faithful captions."
        },
        {
          "id": "make-beat-synced-video",
          "displayName": "Make Beat-Synced Video",
          "difference": "Make Beat-Synced Video: Cut supplied visuals to measured music structure and verify the export. In contrast, Edit Social Video: Turn supplied footage into one platform-ready social video using current placement rules, a strong opening and evidence-faithful captions."
        },
        {
          "id": "make-music-video",
          "displayName": "Make Music Video",
          "difference": "Make Music Video: Cut authorized footage to one song through a validated lyric, rhythm, and visual-arc EDL. In contrast, Edit Social Video: Turn supplied footage into one platform-ready social video using current placement rules, a strong opening and evidence-faithful captions."
        }
      ]
    },
    {
      "id": "editorial-cutout-explainer",
      "displayName": "Editorial Cutout Explainer",
      "description": "Plan and create a generic editorial cutout explainer with shallow 2D motion and approved evidence beats.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Evidence-led editorial cutout production",
      "tone": "orange",
      "featured": false,
      "whatThisSkillDoes": [
        "Builds a thesis, beat plan, and key visual system before paid media.",
        "Uses readable evidence and generic cutout grammar without copying any publisher style."
      ],
      "howToUse": {
        "summary": "Provide a topic, article, or report; include evidence, ratio, duration, and any explicitly supported narration/subtitle need. Canvas storage is optional. #### Example ```text 把这份气候报告做成 45 秒剪报拼贴科普：先出论点、关键视觉和分镜，使用浅视差和信息标签。 ``` ## Workflow 1. Lock factual scope, thesis, beat budget, evidence roles, and generic cutout visual rules. 2. Approve plan and keyframes before using image/video routes. 3. Hand each accepted visual beat to `$generate-video`; use `$combine-videos` only for requested assembly and persist keys/receipts. 4. Check evidence clarity, shallow 2D motion, and no unwanted audio/text.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "把这份气候报告做成 45 秒剪报拼贴科普：先出论点、关键视觉和分镜，使用浅视差和信息标签。"
          }
        ]
      },
      "output": {
        "Media type": "Approved plan, key visuals, and requested MP4 clips or assembly",
        "Default quantity": "One short explainer",
        "Content per video": "One evidence-led editorial beat",
        "Default layout": "User-requested ratio",
        "Model policy": "Current verified image and catalog-selected video routes",
        "Downstream use": "Knowledge and report explainers"
      },
      "similarSkills": [
        {
          "id": "make-explainer-video",
          "displayName": "Make Explainer Video",
          "difference": "Make Explainer Video: Produce a fact-traceable narrated explainer with timed visual beats, subtitles, and final QC. In contrast, Editorial Cutout Explainer: Plan and create a generic editorial cutout explainer with shallow 2D motion and approved evidence beats."
        },
        {
          "id": "line-doodle-explainer",
          "displayName": "Line-Doodle Explainer",
          "difference": "Line-Doodle Explainer: Explain one topic with sparse line figures, narration beats, diagrams, and an approved animated storyboard. In contrast, Editorial Cutout Explainer: Plan and create a generic editorial cutout explainer with shallow 2D motion and approved evidence beats."
        }
      ]
    },
    {
      "id": "expand-image",
      "displayName": "Expand Image",
      "description": "Extend an image to a new ratio without stretching it.",
      "category": "Image utility",
      "categoryTags": [
        "image-utility"
      ],
      "coverImage": "/skill-covers/expand-image.png",
      "routeLabel": "GPT Image 2 preservation-first outpainting with Expand Image fallback",
      "tone": "sky",
      "featured": false,
      "whatThisSkillDoes": [
        "Converts an existing image to a requested ratio or pixel canvas by adding generated surroundings.",
        "Chooses target dimensions and original-image placement before execution.",
        "Preserves subjects, products, faces, garments, logos, readable copy, perspective, lighting, and the original scene.",
        "Restores the original pixel region after outpainting when exact source fidelity matters.",
        "Creates intentional safe area or copy space by placing the original off-center when requested.",
        "Validates dimensions, source continuity, seams, repeated objects, invented content, and output count."
      ],
      "howToUse": {
        "summary": "Provide one image and the target ratio or pixel size; optionally say where the existing subject should remain.",
        "promptExamples": [
          {
            "title": "Convert square to portrait",
            "prompt": "Expand this image to 4:5 and keep the existing composition centered."
          },
          {
            "title": "Create banner copy space",
            "prompt": "Expand this image to 16:9, keep the product on the right, and leave clean space on the left."
          },
          {
            "title": "Fit a vertical placement",
            "prompt": "Extend this poster to 9:16 without changing its existing subject or readable text."
          }
        ]
      },
      "output": {
        "Media type": "One expanded image plus original and acceptance record",
        "Default quantity": "1 separate image",
        "Content per image": "One protected source composition with newly generated outer canvas",
        "Default layout": "Centered source unless the user requests directional safe area or copy space",
        "Model policy": "GPT Image 2 medium/2K first; one `expandimage` fallback only after visual failure or when exact arbitrary pixel geometry requires it",
        "Downstream use": "Ratio correction for every image Skill, posters, banners, product pages, social placements, and campaign variants"
      }
    },
    {
      "id": "eye-color-change",
      "displayName": "Eye Color Change",
      "description": "Preview one natural iris color without changing the eyes.",
      "category": "Person appearance",
      "categoryTags": [
        "person-appearance"
      ],
      "coverImage": "/skill-covers/eye-color-change.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "rose",
      "featured": false,
      "whatThisSkillDoes": [
        "Produces one portrait with one bilateral iris-color change.",
        "Edits the irises only and preserves pupil, sclera, catchlights, lids, lashes, and gaze.",
        "Keeps identity, skin, expression, hair, clothing, and scene unchanged."
      ],
      "howToUse": {
        "summary": "Provide one sharp portrait with both irises visible and name one target color.",
        "promptExamples": [
          {
            "title": "Preview hazel eyes",
            "prompt": "Change both irises to natural hazel-green with realistic radial detail and unchanged catchlights."
          }
        ]
      },
      "output": {
        "Media type": "One edited portrait image",
        "Default quantity": "1",
        "Content per image": "One person with one iris-color treatment",
        "Default layout": "Preserve source composition; no collage",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Contact-lens preview, beauty planning, and personal visualization"
      }
    },
    {
      "id": "fashion-model-replacement",
      "displayName": "Fashion Model Replacement",
      "description": "Replace a fashion model while keeping the outfit intact.",
      "category": "Commercial production",
      "categoryTags": [
        "commercial-production"
      ],
      "coverImage": "/skill-covers/fashion-model-replacement.jpg",
      "routeLabel": "WeShop AI Model or GPT Image 2",
      "tone": "coral",
      "featured": false,
      "whatThisSkillDoes": [
        "Replaces a person or mannequin already wearing the product.",
        "Generates a suitable adult model from a concise description when no target-model image is supplied.",
        "Routes between the currently verified WeShop AI Model contract, newer verified WeShop replacement routes, and GPT Image 2 according to inputs.",
        "Verifies outfit, anatomy, identity/reference, pose, crop, and scene continuity."
      ],
      "howToUse": {
        "summary": "Provide one already-dressed fashion image, then describe the new model or attach an authorized target-model reference.",
        "promptExamples": [
          {
            "title": "Describe a new model",
            "prompt": "Replace the model with an adult Black woman with short natural curls and keep the complete outfit, pose, and studio unchanged."
          },
          {
            "title": "Use a model reference",
            "prompt": "Replace the person in this fashion image with the supplied model reference while preserving the outfit and composition."
          },
          {
            "title": "Replace a mannequin",
            "prompt": "Turn this dressed mannequin image into a natural adult fashion-model photo without changing the clothing."
          }
        ]
      },
      "output": {
        "Media type": "One fashion model replacement image plus a compact source and acceptance record",
        "Default quantity": "1 separate image",
        "Content per image": "One replacement model wearing the preserved source outfit",
        "Default layout": "Preserve source pose, crop, camera, scene, lighting, and composition",
        "Video output": "No",
        "Model policy": "Text-described replacement uses the best verified WeShop AI Model route; supplied model references prefer GPT Image 2 medium/2K",
        "Downstream use": "Pose variants, fashion photoshoots, lookbooks, product pages, posters, banners, and collages"
      },
      "similarSkills": [
        {
          "id": "change-pose",
          "displayName": "Change Pose",
          "difference": "Change Pose: Change a person’s pose without changing their look. In contrast, Fashion Model Replacement: Replace a fashion model while keeping the outfit intact."
        },
        {
          "id": "virtual-try-on",
          "displayName": "Virtual Try-On",
          "difference": "Virtual Try-On: Try on or replace a garment with fidelity checks. In contrast, Fashion Model Replacement: Replace a fashion model while keeping the outfit intact."
        }
      ]
    },
    {
      "id": "film-reference-prompt-writer",
      "displayName": "Film Reference Prompt Writer",
      "description": "Produce one observable film-reference prompt brief with explicit inputs, boundaries, and acceptance checks.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Independent outcome contract",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Captures the specific requested outcome and authorized asset roles.",
        "Produces a reviewable plan before any paid media route.",
        "Hands only approved atomic work to currently verified native Atoms."
      ],
      "howToUse": {
        "summary": "Provide the desired result, authorized inputs, preservation requirements, ratio/duration when relevant, and acceptance criteria.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create one observable film-reference prompt brief from my authorized assets; preserve the stated facts and show the plan before media generation."
          }
        ]
      },
      "output": {
        "Media type": "One observable film-reference prompt brief",
        "Default quantity": "1",
        "Content per artifact": "Approved plan, requested deliverable, and acceptance result",
        "Default layout": "User-requested format",
        "Model policy": "Existing verified native Atoms only",
        "Downstream use": "Review, assembly, or publication after user approval"
      }
    },
    {
      "id": "fpv-tour-video-generator",
      "displayName": "FPV Tour Video Generator",
      "description": "Produce one route-planned FPV flythrough with continuous spatial motion and landmark coverage.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Continuous spatial FPV composition",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Separates scene/world references from an optional character identity guide and locks duration, ratio, landmarks, and flight constraints.",
        "Designs a plausible continuous route rather than a sequence of disconnected aerial shots.",
        "Generates, assembles only when required, and inspects a final tour for route continuity and reference fidelity."
      ],
      "howToUse": {
        "summary": "Provide an authorized scene or subject image, duration, ratio, must-show landmarks, route style, difficulty, and any character or motion references. The scene defines the environment, lighting, palette, materials, and spatial layout; a character reference supplies identity only.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a 12-second 16:9 FPV tour through this boutique hotel lobby. Start outside the entrance, pass through the doors, skim past the central staircase, and finish looking toward the sunlit courtyard. Preserve the lobby materials and lighting; no cuts or impossible wall clipping."
          }
        ]
      },
      "output": {
        "Media type": "One MP4 FPV tour plus route storyboard, segment manifest, and operation receipts",
        "Default quantity": "1 continuous tour",
        "Content per video": "One spatially coherent FPV traversal with requested landmarks",
        "Default layout": "User-requested duration, ratio, route style, and audio plan",
        "Model policy": "Kling Omni complex references; Kling 3 precise frames; Seedance 2.5 audiovisual/artistic; Seedance 2.0 routine; H3 justified large motion",
        "Downstream use": "Human creative, spatial-fidelity, and publication review"
      }
    },
    {
      "id": "generate-video",
      "displayName": "Generate Video",
      "description": "Generate one coherent video from a shot brief using a deliberately selected current model and one observable action.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/generate-video.png",
      "routeLabel": "Guide-routed cataloged video model",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Turns text into one shot with explicit subject, action, environment, camera, duration and sound.",
        "Selects a current model from capabilities, not from the phrase text-to-video."
      ],
      "howToUse": {
        "summary": "Provide subject, one action, setting, camera, duration, ratio, style and audio preference.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Generate a 5-second 16:9 video of a paper boat drifting through a rain puddle; slow low tracking shot; natural rain audio."
          }
        ]
      },
      "output": {
        "Media type": "One MP4 video",
        "Default quantity": "1",
        "Content per video": "One coherent generated shot",
        "Default layout": "User-requested delivery format",
        "Model policy": "H3 large/natural motion; Kling Omni complex/motion references; Kling 3 precise frames/products; Seedance 2.5 long audiovisual/artistic/performance; Veo source-image premium synchronous audio; Seedance 2.0 routine",
        "Downstream use": "General video generation"
      }
    },
    {
      "id": "h3-prompt-expert",
      "displayName": "Video Prompt Expert",
      "description": "Produce one structured reference-aware video execution brief with explicit inputs, boundaries, and acceptance checks.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Independent outcome contract",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Captures the specific requested outcome and authorized asset roles.",
        "Produces a reviewable plan before any paid media route.",
        "Hands only approved atomic work to currently verified native Atoms."
      ],
      "howToUse": {
        "summary": "Provide the desired result, authorized inputs, preservation requirements, ratio/duration when relevant, and acceptance criteria.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create one structured reference-aware video execution brief from my authorized assets; preserve the stated facts and show the plan before media generation."
          }
        ]
      },
      "output": {
        "Media type": "One structured reference-aware video execution brief",
        "Default quantity": "1",
        "Content per artifact": "Approved plan, requested deliverable, and acceptance result",
        "Default layout": "User-requested format",
        "Model policy": "Existing verified native Atoms only",
        "Downstream use": "Review, assembly, or publication after user approval"
      }
    },
    {
      "id": "hair-color-change",
      "displayName": "Hair Color Change",
      "description": "Preview one new hair color without changing the person or cut.",
      "category": "Person appearance",
      "categoryTags": [
        "person-appearance"
      ],
      "coverImage": "/skill-covers/hair-color-change.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "rose",
      "featured": false,
      "whatThisSkillDoes": [
        "Produces one recolored-hair portrait from one authorized source portrait.",
        "Changes pigment only; keeps length, texture, volume, part, hairline, and flyaways.",
        "Preserves identity and every non-hair region."
      ],
      "howToUse": {
        "summary": "Provide one clear portrait and name one target shade or coloring pattern.",
        "promptExamples": [
          {
            "title": "Preview auburn hair",
            "prompt": "Change this person’s hair to natural copper auburn with subtle root depth."
          }
        ]
      },
      "output": {
        "Media type": "One edited portrait image",
        "Default quantity": "1",
        "Content per image": "One person with one hair-color treatment",
        "Default layout": "Preserve source composition; no collage",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Salon consultation, personal preview, and beauty creative"
      },
      "similarSkills": [
        {
          "id": "change-bangs",
          "displayName": "Change Bangs",
          "difference": "Change Bangs: Preview one fringe style without replacing the full haircut. In contrast, Hair Color Change: Preview one new hair color without changing the person or cut."
        },
        {
          "id": "hairstyle-change",
          "displayName": "Hairstyle Change",
          "difference": "Hairstyle Change: Preview one different hairstyle without changing identity. In contrast, Hair Color Change: Preview one new hair color without changing the person or cut."
        },
        {
          "id": "shave-head",
          "displayName": "Shave Head",
          "difference": "Shave Head: Preview a natural bald or shaved-head appearance. In contrast, Hair Color Change: Preview one new hair color without changing the person or cut."
        }
      ]
    },
    {
      "id": "hairstyle-change",
      "displayName": "Hairstyle Change",
      "description": "Preview one different hairstyle without changing identity.",
      "category": "Person appearance",
      "categoryTags": [
        "person-appearance"
      ],
      "coverImage": "/skill-covers/hairstyle-change.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "rose",
      "featured": false,
      "whatThisSkillDoes": [
        "Produces one portrait with one requested hairstyle.",
        "Accepts text or a hairstyle reference whose identity is not transferred.",
        "Reconstructs newly exposed ears, neck, shoulders, and background naturally."
      ],
      "howToUse": {
        "summary": "Provide one clear portrait and describe one hairstyle; optionally supply one hair-only reference.",
        "promptExamples": [
          {
            "title": "Preview a bob",
            "prompt": "Give this person a chin-length softly waved bob with a side part, keeping their natural hair color."
          }
        ]
      },
      "output": {
        "Media type": "One edited portrait image",
        "Default quantity": "1",
        "Content per image": "One person with one hairstyle",
        "Default layout": "Preserve source composition; no collage",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Salon consultation and personal hairstyle preview"
      },
      "similarSkills": [
        {
          "id": "change-bangs",
          "displayName": "Change Bangs",
          "difference": "Change Bangs: Preview one fringe style without replacing the full haircut. In contrast, Hairstyle Change: Preview one different hairstyle without changing identity."
        },
        {
          "id": "hair-color-change",
          "displayName": "Hair Color Change",
          "difference": "Hair Color Change: Preview one new hair color without changing the person or cut. In contrast, Hairstyle Change: Preview one different hairstyle without changing identity."
        },
        {
          "id": "shave-head",
          "displayName": "Shave Head",
          "difference": "Shave Head: Preview a natural bald or shaved-head appearance. In contrast, Hairstyle Change: Preview one different hairstyle without changing identity."
        }
      ]
    },
    {
      "id": "handdrawn-live-action-fusion",
      "displayName": "Handdrawn Live-Action Fusion",
      "description": "Create one warm, rough hand-drawn entity that touches reality, morphs continuously, and escapes through a connected space.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Contact-led live-action drawing fusion",
      "tone": "orange",
      "featured": false,
      "whatThisSkillDoes": [
        "Plans a single continuous shot with a real/drawn contact beat in its opening seconds.",
        "Preserves one recognizable entity while it morphs, travels, and expands into a final environmental payoff.",
        "Keeps rough crayon, chalk, or colored-pencil texture and excludes horror-coded anatomy and jump scares."
      ],
      "howToUse": {
        "summary": "Provide the real setting, contact object or hand, entity idea, mood, ratio, duration, and any source image. Canvas-capable Agents may save the approved plan there; otherwise the plan stays in chat.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "在雨后的厨房里，让一只蜡笔小狐狸从手心绕过手指逃到阳台；15 秒 16:9，一镜到底，温暖、不恐怖。"
          }
        ]
      },
      "output": {
        "Media type": "One MP4 video",
        "Default quantity": "1",
        "Content per video": "One continuous contact-to-morph chase",
        "Default layout": "16:9 unless requested otherwise",
        "Model policy": "Current catalog-selected video route; no fixed provider",
        "Downstream use": "Standalone creative short"
      }
    },
    {
      "id": "handdrawn-story-video",
      "displayName": "Hand-drawn Story Video",
      "description": "Silent hand-drawn story-video plan and render brief.",
      "category": "Media workflows",
      "categoryTags": [
        "media-workflows"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Agent-authored structured brief",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Freezes the request, approved facts, source assets, constraints, and acceptance checks.",
        "Produces one structured brief for: silent hand-drawn story-video plan and render brief.",
        "Preserves user-approved facts and assets; flags unknowns rather than inventing them."
      ],
      "howToUse": {
        "summary": "Provide the desired outcome, source material, audience, format, fixed facts/assets, and any must-not-change constraints. This Skill plans and validates; it does not claim an unverified provider execution route.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a silent hand-drawn story-video plan and render brief from my approved source material. Preserve the named facts and clearly identify every assumption."
          }
        ]
      },
      "output": {
        "Media type": "Structured planning brief",
        "Default quantity": "One brief",
        "Content per artifact": "Objective, inputs, fixed facts, constraints, output structure, risks, and acceptance checks",
        "Default layout": "Validated Markdown",
        "Model policy": "Agent-authored planning; no paid media generation or unverified provider call",
        "Downstream use": "$make-podcast-video or another verified Atom selected by Router intent matching"
      }
    },
    {
      "id": "id-photo-format",
      "displayName": "ID Photo Format",
      "description": "Research the authority, correct the capture, then crop around the measured head.",
      "category": "Portrait production",
      "categoryTags": [
        "portrait-production"
      ],
      "coverImage": "/skill-covers/id-photo-format.png",
      "routeLabel": "Official-rule research plus WeShop and measured crop",
      "tone": "rose",
      "featured": false,
      "whatThisSkillDoes": [
        "Produces one exact ID-photo file for one named authority and document type.",
        "Researches current official crop, ear/face visibility, lighting, background, expression, and alteration rules before editing.",
        "Scales and crops around the crown-to-chin measurement instead of shrinking the complete input photo.",
        "Preserves identity and rejects beauty editing, facial reconstruction, or unsupported compliance claims."
      ],
      "howToUse": {
        "summary": "Name the country, issuing authority, document, and submission/print channel; or provide the complete official specification.",
        "promptExamples": [
          {
            "title": "Prepare a researched ID photo",
            "prompt": "Prepare this portrait for the named passport application. Find the current official rules first, then return the exact crop and a compliance record."
          }
        ]
      },
      "output": {
        "Media type": "One exact-size ID-photo file plus official-source and compliance record",
        "Default quantity": "1",
        "Content per image": "Crown, full face, neck, and authority-required shoulder area; no full-body shrink",
        "Default layout": "Authority-defined measured head crop; no collage or print sheet unless requested separately",
        "Model policy": "GPT Image 2 Medium/2K only when alteration is permitted; deterministic measured crop always owns final geometry",
        "Downstream use": "Application preparation subject to issuing-authority review"
      },
      "similarSkills": [
        {
          "id": "make-wallet-photo",
          "displayName": "Make Wallet Photo",
          "difference": "Make Wallet Photo: Prepare one wallet-size print portrait from an authorized photo using a real print dimension, crop and bleed specification. In contrast, ID Photo Format: Research the authority, correct the capture, then crop around the measured head."
        },
        {
          "id": "professional-headshot",
          "displayName": "Professional Headshot",
          "difference": "Professional Headshot: Research the channel, then create a properly posed and lit professional portrait. In contrast, ID Photo Format: Research the authority, correct the capture, then crop around the measured head."
        }
      ]
    },
    {
      "id": "image-combiner",
      "displayName": "Image Combiner",
      "description": "Merge multiple images into one coherent scene.",
      "category": "Layout / composition",
      "categoryTags": [
        "layout-composition"
      ],
      "coverImage": "/skill-covers/image-combiner.jpg",
      "routeLabel": "Multi-reference image composition",
      "tone": "cyan",
      "featured": false,
      "whatThisSkillDoes": [
        "Assigns a clear role to every source image before generation.",
        "Rebuilds the sources as one scene with consistent scale, perspective, lighting, color, depth, contact, and occlusion.",
        "Preserves only the explicitly requested identities, objects, materials, markings, or scene features.",
        "Rejects pasted-on, split-screen, collage, duplicated, or visibly disconnected results."
      ],
      "howToUse": {
        "summary": "Attach two or more images and say which subject, environment, pose, style, or detail each image contributes.",
        "promptExamples": [
          {
            "title": "Put a subject into a scene",
            "prompt": "Place the product from the first image naturally into the room from the second image."
          },
          {
            "title": "Combine people or objects",
            "prompt": "Combine these two subjects into one believable photo while preserving both appearances."
          },
          {
            "title": "Mix subject and style references",
            "prompt": "Create one image using the first image as the subject and the second as the visual style."
          }
        ]
      },
      "output": {
        "Media type": "One merged image and a compact acceptance record",
        "Default quantity": "1 separate image",
        "Content per image": "One coherent scene containing the requested contributions from two to five sources",
        "Default layout": "Single scene using the environment source ratio or auto",
        "Video output": "No",
        "Model policy": "Route the best current multi-reference image editor; specialized combiner endpoints are optional",
        "Downstream use": "Subject-in-scene composition, multi-subject photos, concept visualization, campaign source assembly, and creative reference synthesis"
      }
    },
    {
      "id": "legal-diagram-redraw",
      "displayName": "Legal Diagram Redraw",
      "description": "Editable redraw of supplied legal diagrams without changing asserted facts.",
      "category": "Media workflows",
      "categoryTags": [
        "media-workflows"
      ],
      "coverImage": "/skill-covers/legal-diagram-redraw.png",
      "routeLabel": "Agent-authored structured brief",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Freezes the request, approved facts, source assets, constraints, and acceptance checks.",
        "Produces one structured brief for: editable redraw of supplied legal diagrams without changing asserted facts.",
        "Preserves user-approved facts and assets; flags unknowns rather than inventing them."
      ],
      "howToUse": {
        "summary": "Provide the desired outcome, source material, audience, format, fixed facts/assets, and any must-not-change constraints. This Skill plans and validates; it does not claim an unverified provider execution route.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a editable redraw of supplied legal diagrams without changing asserted facts from my approved source material. Preserve the named facts and clearly identify every assumption."
          }
        ]
      },
      "output": {
        "Media type": "Structured planning brief",
        "Default quantity": "One brief",
        "Content per artifact": "Objective, inputs, fixed facts, constraints, output structure, risks, and acceptance checks",
        "Default layout": "Validated Markdown",
        "Model policy": "Agent-authored planning; no paid media generation or unverified provider call",
        "Downstream use": "$make-infographic or another verified Atom selected by Router intent matching"
      }
    },
    {
      "id": "legal-evidence-timeline",
      "displayName": "Legal Evidence Timeline",
      "description": "Traceable chronology from user-supplied evidence.",
      "category": "Media workflows",
      "categoryTags": [
        "media-workflows"
      ],
      "coverImage": "/skill-covers/legal-evidence-timeline.png",
      "routeLabel": "Agent-authored structured brief",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Freezes the request, approved facts, source assets, constraints, and acceptance checks.",
        "Produces one structured brief for: traceable chronology from user-supplied evidence.",
        "Preserves user-approved facts and assets; flags unknowns rather than inventing them."
      ],
      "howToUse": {
        "summary": "Provide the desired outcome, source material, audience, format, fixed facts/assets, and any must-not-change constraints. This Skill plans and validates; it does not claim an unverified provider execution route.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a traceable chronology from user-supplied evidence from my approved source material. Preserve the named facts and clearly identify every assumption."
          }
        ]
      },
      "output": {
        "Media type": "Structured planning brief",
        "Default quantity": "One brief",
        "Content per artifact": "Objective, inputs, fixed facts, constraints, output structure, risks, and acceptance checks",
        "Default layout": "Validated Markdown",
        "Model policy": "Agent-authored planning; no paid media generation or unverified provider call",
        "Downstream use": "$make-infographic or another verified Atom selected by Router intent matching"
      }
    },
    {
      "id": "line-doodle-explainer",
      "displayName": "Line-Doodle Explainer",
      "description": "Explain one topic with sparse line figures, narration beats, diagrams, and an approved animated storyboard.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Diagram-first line-doodle teaching production",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Extracts one learning outcome and a clear explanatory structure from source material.",
        "Designs simple line figures and diagrams that carry teaching logic instead of decorative motion.",
        "Plans and generates approved shots without forcing unverified audio or subtitles."
      ],
      "howToUse": {
        "summary": "Provide the topic, audience, duration, ratio, factual source material, and whether you want a plan, storyboard, or finished shots. Canvas-capable Agents may retain approved plan documents and gates there; otherwise they use chat or local delivery.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "用极简线条小人解释通货膨胀为什么会让同样的钱买得更少；30 秒竖版，面向高中生，先出旁白和分镜。"
          }
        ]
      },
      "output": {
        "Media type": "Approved plan/storyboard and requested MP4 clips or assembly",
        "Default quantity": "One compact explainer",
        "Content per video": "One diagram-led knowledge path",
        "Default layout": "16:9 unless requested otherwise",
        "Model policy": "Current catalog-selected video route; no standalone audio claim",
        "Downstream use": "Educational and knowledge shorts"
      },
      "similarSkills": [
        {
          "id": "make-explainer-video",
          "displayName": "Make Explainer Video",
          "difference": "Make Explainer Video: Produce a fact-traceable narrated explainer with timed visual beats, subtitles, and final QC. In contrast, Line-Doodle Explainer: Explain one topic with sparse line figures, narration beats, diagrams, and an approved animated storyboard."
        },
        {
          "id": "editorial-cutout-explainer",
          "displayName": "Editorial Cutout Explainer",
          "difference": "Editorial Cutout Explainer: Plan and create a generic editorial cutout explainer with shallow 2D motion and approved evidence beats. In contrast, Line-Doodle Explainer: Explain one topic with sparse line figures, narration beats, diagrams, and an approved animated storyboard."
        }
      ]
    },
    {
      "id": "lip-product-commercial",
      "displayName": "Lip Product Commercial",
      "description": "Plan and produce an anchor-locked lip-product commercial with application, texture, shade, and packshot evidence.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Lip-color proof commercial production",
      "tone": "pink",
      "featured": false,
      "whatThisSkillDoes": [
        "Locks a model/face reference, product reference, and approved storyboard before moving media.",
        "Plans beauty, texture, application, model-product, and closing-packshot proof without obscuring lips or labels.",
        "Preserves product silhouette, shade, cap, label placement, and visible finish across accepted shots."
      ],
      "howToUse": {
        "summary": "Provide product/model references or a brief, target ratio/duration, copy rules, and licensed music if required. A Canvas-capable Agent may retain approved anchors and storyboard there; otherwise it uses chat or local delivery.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "用这支唇釉做 20 秒 16:9 广告：保留瓶身、豆沙色和玻璃唇光泽；需要模特上唇、质地特写、自然拿取和收尾 packshot，不要背景音乐。"
          }
        ]
      },
      "output": {
        "Media type": "Approved storyboard and requested MP4 shots or assembly",
        "Default quantity": "One commercial cut",
        "Content per video": "Lip beauty, texture/application proof, and packshot",
        "Default layout": "User-requested ratio",
        "Model policy": "Verified image route for anchors and catalog-selected video route for shots",
        "Downstream use": "Lipstick, tint, gloss, oil, and glaze campaigns"
      }
    },
    {
      "id": "live-sketch-motion",
      "displayName": "Live Sketch Motion",
      "description": "Animate a real scene while a visible marker progressively redraws one moving subject as a lively colored-pencil sketch.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Marker-synchronized live-to-sketch conversion",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Preserves source composition, identity, support surfaces, and plausible background micro-motion.",
        "Specifies a natural marker hand, tip-synchronized reveal, and a three-layer white-border, black-line, hatched-fill sketch.",
        "Prevents frozen subjects, pre-reveals, sticker pop-ins, and generic overlay effects."
      ],
      "howToUse": {
        "summary": "Provide a photo, a motion reference, or a text scene; include target subject, ratio, duration, sketch style, and sound preference. Text-only scenes receive a realistic preview gate. Canvas-capable Agents may store plan and prompt documents there; otherwise they deliver them in chat or locally.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "把这张跑步小狗照片做成 7 秒横版视频：蓝色马克笔从右下进入，边画边把小狗变成彩铅涂鸦，小狗全程继续跑。"
          }
        ]
      },
      "output": {
        "Media type": "One MP4 video and optional approved preview",
        "Default quantity": "1",
        "Content per video": "One continuous marker-driven subject conversion",
        "Default layout": "Source ratio or 16:9",
        "Model policy": "Verified image route for text-only preview; catalog-selected video route for clip",
        "Downstream use": "Social and creator visual effects"
      }
    },
    {
      "id": "make-beat-synced-video",
      "displayName": "Make Beat-Synced Video",
      "description": "Cut supplied visuals to measured music structure and verify the export.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Deterministic beat-aware edit",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Measures beats, sections, peaks, and valleys instead of guessing timestamps.",
        "Matches clip energy and user priorities through an editable EDL.",
        "Renders one accepted sequence with restrained effects and end-to-end QC."
      ],
      "howToUse": {
        "summary": "Provide authorized music and visual files, destination, ratio, target duration or song section, must-use/exclude clips, desired energy curve, and named effects.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Cut these eight licensed travel clips into a 30-second 9:16 reel using the supplied chorus. Let the first phrase breathe, accelerate toward the drop, use one restrained white-flash accent, and preserve the original framing of faces."
          }
        ]
      },
      "output": {
        "Media type": "Deterministically edited video",
        "Default quantity": "One accepted master; requested aspect variants only",
        "Content per video": "User-authorized footage/stills synchronized to supplied music",
        "Default layout": "Destination ratio without geometric stretching",
        "Model policy": "Local deterministic analysis and editing; no paid generation",
        "Downstream use": "Publication after user review and any platform compliance checks"
      },
      "similarSkills": [
        {
          "id": "combine-videos",
          "displayName": "Combine Videos",
          "difference": "Combine Videos: Combine supplied clips into one ordered video with intentional trims, transitions and audio handling; do not regenerate footage. In contrast, Make Beat-Synced Video: Cut supplied visuals to measured music structure and verify the export."
        },
        {
          "id": "edit-social-video",
          "displayName": "Edit Social Video",
          "difference": "Edit Social Video: Turn supplied footage into one platform-ready social video using current placement rules, a strong opening and evidence-faithful captions. In contrast, Make Beat-Synced Video: Cut supplied visuals to measured music structure and verify the export."
        },
        {
          "id": "make-music-video",
          "displayName": "Make Music Video",
          "difference": "Make Music Video: Cut authorized footage to one song through a validated lyric, rhythm, and visual-arc EDL. In contrast, Make Beat-Synced Video: Cut supplied visuals to measured music structure and verify the export."
        }
      ]
    },
    {
      "id": "make-birthday-video",
      "displayName": "Make Birthday Video",
      "description": "Create one complete birthday memory video from authorized media, exact messages and licensed or original audio.",
      "category": "Social and memory",
      "categoryTags": [
        "social-and-memory"
      ],
      "coverImage": "/skill-covers/make-birthday-video.png",
      "routeLabel": "Memory-led birthday video assembly",
      "tone": "yellow",
      "featured": false,
      "whatThisSkillDoes": [
        "Builds a chronological or thematic birthday story from supplied photos and clips.",
        "Uses generative motion only where approved and never fabricates real memories as documentary events."
      ],
      "howToUse": {
        "summary": "Provide authorized photos and clips, recipient, exact messages, chronology, runtime, ratio and music rights.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Make a 30-second birthday video for Maya from these authorized photos in date order; exact ending Happy 30th, Maya!"
          }
        ]
      },
      "output": {
        "Media type": "One birthday MP4 video",
        "Default quantity": "1",
        "Content per video": "One complete authorized memory video",
        "Default layout": "User-requested or print-defined format",
        "Model policy": "Kling 3.0 for approved still animation plus deterministic timeline assembly; user-supplied licensed audio only",
        "Downstream use": "Birthday tributes and keepsakes"
      }
    },
    {
      "id": "make-explainer-video",
      "displayName": "Make Explainer Video",
      "description": "Produce a fact-traceable narrated explainer with timed visual beats, subtitles, and final QC.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Source-backed beat-to-video composition",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Builds a source-backed explanation around one audience question and a clear narrative throughline.",
        "Locks narration timing before producing visually consistent beat assets.",
        "Assembles accepted clips with supplied or separately authorized audio, subtitles, and a final sync/legibility review."
      ],
      "howToUse": {
        "summary": "Provide the topic or source material, audience, angle/question, language, target duration, ratio, citation expectations, visual direction, and any supplied narration, music, brand, or reference assets.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Make a 60-second 16:9 explainer about why urban trees cool streets. Use current primary sources, neutral paper-collage visuals, supplied narration voice, burned-in English subtitles, and source notes."
          }
        ]
      },
      "output": {
        "Media type": "One final MP4 plus fact ledger, beat script, source notes, and operation receipt",
        "Default quantity": "1",
        "Content per video": "One researched explanatory arc with synchronized narration, visuals, and subtitles",
        "Default layout": "User-requested ratio and exact duration target",
        "Model policy": "Existing verified image/video routes; audio only when supplied or separately supported and authorized",
        "Downstream use": "Human editorial, factual, rights, and publication review"
      },
      "similarSkills": [
        {
          "id": "line-doodle-explainer",
          "displayName": "Line-Doodle Explainer",
          "difference": "Line-Doodle Explainer: Explain one topic with sparse line figures, narration beats, diagrams, and an approved animated storyboard. In contrast, Make Explainer Video: Produce a fact-traceable narrated explainer with timed visual beats, subtitles, and final QC."
        },
        {
          "id": "editorial-cutout-explainer",
          "displayName": "Editorial Cutout Explainer",
          "difference": "Editorial Cutout Explainer: Plan and create a generic editorial cutout explainer with shallow 2D motion and approved evidence beats. In contrast, Make Explainer Video: Produce a fact-traceable narrated explainer with timed visual beats, subtitles, and final QC."
        }
      ]
    },
    {
      "id": "make-flowchart",
      "displayName": "Make Flowchart",
      "description": "Create one accurate readable flowchart from an explicit process model with verified nodes, decisions and connections.",
      "category": "Space and diagrams",
      "categoryTags": [
        "space-and-diagrams"
      ],
      "coverImage": "/skill-covers/make-flowchart.png",
      "routeLabel": "GPT Image 2 flowchart rendering",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Converts a process into semantically correct start, process, decision and end nodes.",
        "Checks graph logic before styling and keeps the final flow on one readable canvas."
      ],
      "howToUse": {
        "summary": "Provide process goal, actors, ordered steps, decisions, branch labels, exceptions and direction.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a top-down flowchart: Request received → Complete?; No → Ask for details → back; Yes → Resolve → End."
          }
        ]
      },
      "output": {
        "Media type": "One flowchart image",
        "Default quantity": "1",
        "Content per image": "One semantically verified process diagram",
        "Default layout": "Source-preserving or dimension-defined format",
        "Model policy": "GPT Image 2 Medium/2K; deterministic diagram rendering is the fallback for exact-copy failure",
        "Downstream use": "Process communication"
      }
    },
    {
      "id": "make-holiday-card",
      "displayName": "Make Holiday Card",
      "description": "Create one personalized holiday card from authorized photos and exact greeting copy while preserving identities and print-safe layout.",
      "category": "Social and memory",
      "categoryTags": [
        "social-and-memory"
      ],
      "coverImage": "/skill-covers/make-holiday-card.png",
      "routeLabel": "GPT Image 2 exact-copy card design",
      "tone": "red",
      "featured": false,
      "whatThisSkillDoes": [
        "Combines a selected holiday, authorized subjects, exact message and intentional card layout.",
        "Keeps faces recognizable, copy accurate and important content inside print or digital safe areas."
      ],
      "howToUse": {
        "summary": "Provide holiday, authorized photos, exact greeting, names, format, channel and visual tone.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create one 5×7 vertical Lunar New Year card from this family photo; exact text 新春快乐 · 林家; elegant red and gold."
          }
        ]
      },
      "output": {
        "Media type": "One holiday card image",
        "Default quantity": "1",
        "Content per image": "One personalized card with exact approved greeting",
        "Default layout": "User-requested or print-defined format",
        "Model policy": "GPT Image 2 exact-copy card design",
        "Downstream use": "Digital greetings and print cards"
      }
    },
    {
      "id": "make-infographic",
      "displayName": "Make Infographic",
      "description": "Research, write, and visualize a sourced infographic.",
      "category": "Social and layout",
      "categoryTags": [
        "social-and-layout"
      ],
      "coverImage": "/skill-covers/make-infographic.png",
      "routeLabel": "Research plus GPT Image 2",
      "tone": "cyan",
      "featured": false,
      "whatThisSkillDoes": [
        "Produces a factual content brief before image generation.",
        "Organizes one message, five to seven evidence points, labels, units, and a source line."
      ],
      "howToUse": {
        "summary": "Provide topic, audience, locale, channel, ratio, and mandatory sources or claims. #### Make a sourced infographic ```text Research household water-saving actions and make a Chinese vertical infographic with sources. ``` ## Workflow 1. Research primary or authoritative sources; record URLs, dates, units, geography, and caveats. 2. Freeze exact title, subtitle, five to seven points, labels, and source line. 3. Choose comparison, process, timeline, map, hierarchy, or dashboard structure from the data relationship. 4. Use `gpt-image` v1.0 at Medium with the frozen brief and ask it to render the complete infographic; retry only the incorrect text or hierarchy with a stricter prompt. 5. Compare every number and word to the brief; reject invented facts, bad units, illegible type, or misleading charts. When this Skill selects GPT Image 2, use `quality: \"medium\"` and `imageSize: \"2K\"` by default; change either only when the user explicitly requests another tier.",
        "promptExamples": [
          {
            "title": "Make a sourced infographic",
            "prompt": "Research household water-saving actions and make a Chinese vertical infographic with sources."
          }
        ]
      },
      "output": {
        "Media type": "One infographic image plus approved text brief",
        "Default quantity": "1",
        "Content per image": "One message and five to seven evidence points",
        "Default layout": "Relationship-led information hierarchy",
        "Model policy": "GPT Image 2 Medium with agent-led copy verification and revision",
        "Downstream use": "Reports, education, and social explainers"
      }
    },
    {
      "id": "make-kinetic-typography",
      "displayName": "Make Kinetic Typography",
      "description": "Turn approved copy into one readable, verified typography animation.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Accessible animated typography",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Locks copy, hierarchy, line breaks, fonts, and contrast before motion.",
        "Selects one motion grammar that supports meaning and reading order.",
        "Produces a deterministic deliverable and verifies representative frames plus playback."
      ],
      "howToUse": {
        "summary": "Provide exact copy and language, destination/format, dimensions, duration, brand direction, authorized fonts, audio or cue timestamps, and whether the result must run on the web or render to video.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Animate this exact six-word headline as a five-second 16:9 title card using our licensed variable font. Reveal by word on the supplied beats, keep the final frame readable for two seconds, and include reduced-motion behavior."
          }
        ]
      },
      "output": {
        "Media type": "Runnable or rendered animated typography",
        "Default quantity": "One animation",
        "Content per artifact": "Exact approved copy with one coherent motion system",
        "Default layout": "Destination-specific with safe-area protection",
        "Model policy": "Deterministic code or motion tooling; no paid media generation",
        "Downstream use": "Title cards, lyric/caption pieces, social video, web hero, or editorial motion"
      }
    },
    {
      "id": "make-mugshot-photo",
      "displayName": "Make Mugshot Photo",
      "description": "Create one clearly fictional or novelty mugshot-style portrait that cannot be mistaken for an official booking record.",
      "category": "Social and memory",
      "categoryTags": [
        "social-and-memory"
      ],
      "coverImage": "/skill-covers/make-mugshot-photo.png",
      "routeLabel": "GPT Image 2 novelty mugshot-style portrait",
      "tone": "gray",
      "featured": false,
      "whatThisSkillDoes": [
        "Applies a lineup-inspired visual convention to an authorized adult portrait for entertainment.",
        "Excludes agency insignia, real case numbers, accusations and document-like evidence framing."
      ],
      "howToUse": {
        "summary": "Provide an authorized adult portrait, fictional or novelty context, crop and non-official styling.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a clearly fictional mugshot-style portrait of this consenting adult; generic height lines, no agency or case number."
          }
        ]
      },
      "output": {
        "Media type": "One novelty mugshot-style image",
        "Default quantity": "1",
        "Content per image": "One clearly fictional lineup-style portrait",
        "Default layout": "User-requested or print-defined format",
        "Model policy": "GPT Image 2 Medium/2K at 3:4; one result; no Tools-class API route",
        "Downstream use": "Entertainment and fictional character art"
      }
    },
    {
      "id": "make-music-video",
      "displayName": "Make Music Video",
      "description": "Cut authorized footage to one song through a validated lyric, rhythm, and visual-arc EDL.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/make-music-video.png",
      "routeLabel": "Music-aware EDL and deterministic render",
      "tone": "purple",
      "featured": true,
      "whatThisSkillDoes": [
        "Maps song sections, dynamics, beats, lyrics, and emotional turns before selecting shots.",
        "Builds an edit decision list with source in/out points, cut rationale, continuity, repetition, and rights metadata.",
        "Renders one deterministic final cut and audits synchronization, visual quality, source balance, and audio integrity."
      ],
      "howToUse": {
        "summary": "Provide a local or authorized song file, local/authorized footage, intended audience/platform, ratio, desired feeling or narrative, lyric source when relevant, required/forbidden moments, and proof or declaration that the assets may be edited.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Make a 90-second 9:16 music video from this licensed track and these six travel clips. Build from quiet departure to euphoric arrival, cut key transitions on musical changes, keep faces unwarped, and use no generated footage."
          }
        ]
      },
      "output": {
        "Media type": "One final MP4 plus source manifest, music map, EDL, and validation report",
        "Default quantity": "1",
        "Content per video": "One complete music-led edit from authorized sources",
        "Default layout": "User-requested ratio, duration, resolution, and platform format",
        "Model policy": "Deterministic analysis/editing by default; generated media requires separately invoked Atoms",
        "Downstream use": "Human rights, creative, and publication review"
      },
      "similarSkills": [
        {
          "id": "combine-videos",
          "displayName": "Combine Videos",
          "difference": "Combine Videos: Combine supplied clips into one ordered video with intentional trims, transitions and audio handling; do not regenerate footage. In contrast, Make Music Video: Cut authorized footage to one song through a validated lyric, rhythm, and visual-arc EDL."
        },
        {
          "id": "edit-social-video",
          "displayName": "Edit Social Video",
          "difference": "Edit Social Video: Turn supplied footage into one platform-ready social video using current placement rules, a strong opening and evidence-faithful captions. In contrast, Make Music Video: Cut authorized footage to one song through a validated lyric, rhythm, and visual-arc EDL."
        },
        {
          "id": "make-beat-synced-video",
          "displayName": "Make Beat-Synced Video",
          "difference": "Make Beat-Synced Video: Cut supplied visuals to measured music structure and verify the export. In contrast, Make Music Video: Cut authorized footage to one song through a validated lyric, rhythm, and visual-arc EDL."
        }
      ]
    },
    {
      "id": "make-pet-portrait",
      "displayName": "Make Pet Portrait",
      "description": "Create one stylized or photographic portrait of a supplied pet while preserving distinctive markings and proportions.",
      "category": "Character and brand",
      "categoryTags": [
        "character-and-brand"
      ],
      "coverImage": "/skill-covers/make-pet-portrait.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "amber",
      "featured": false,
      "whatThisSkillDoes": [
        "Preserves species, facial structure, coat pattern, eye color and signature markings from pet references.",
        "Applies one declared portrait treatment without inventing accessories or changing breed traits."
      ],
      "howToUse": {
        "summary": "Provide pet photos, the pet name, desired portrait style, crop and background.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a dignified oil-painting portrait of this dog on deep green; preserve the white left-ear patch and amber eyes."
          }
        ]
      },
      "output": {
        "Media type": "One pet portrait",
        "Default quantity": "1",
        "Content per image": "One recognizable pet in one portrait treatment",
        "Default layout": "User-requested or source-preserving format",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Keepsakes and pet profiles"
      }
    },
    {
      "id": "make-podcast-video",
      "displayName": "Make Podcast Video",
      "description": "Create one complete podcast video from approved audio or script with speaker-aware visuals and synchronized program audio.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/make-podcast-video.png",
      "routeLabel": "Podcast scene and audio-led video assembly",
      "tone": "navy",
      "featured": false,
      "whatThisSkillDoes": [
        "Builds a finished podcast video instead of returning loose talking clips.",
        "Maps speaker turns, titles, captions and supporting visuals into one coherent timeline."
      ],
      "howToUse": {
        "summary": "Provide approved audio or script, speakers and consent, show identity, platform, runtime and captions.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a 30-second 16:9 podcast highlight from authorized two-speaker audio; preserve wording and identify speakers."
          }
        ]
      },
      "output": {
        "Media type": "One MP4 video",
        "Default quantity": "1",
        "Content per video": "One complete audio-synchronized podcast video",
        "Default layout": "User-requested delivery format",
        "Model policy": "Deterministic audio-led assembly; GPT Image 2 Medium/2K for stills, Kling 3.0 for precise still animation, Seedance 2.5 for generated audio-visual shots",
        "Downstream use": "Podcast episodes and social highlights"
      }
    },
    {
      "id": "make-product-commercial",
      "displayName": "Make Product Commercial",
      "description": "Produce one truthful, continuity-safe short commercial in which the supplied product drives the action.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Product-safe multi-shot video composition",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Locks product truth, audience promise, duration, CTA, and claim evidence before creative treatment.",
        "Converts one approved treatment into timed atomic shots with stable product, cast, space, light, and screen-direction anchors.",
        "Generates and assembles only the required shots, then inspects the complete commercial for product fidelity, timing, claims, sound, and CTA."
      ],
      "howToUse": {
        "summary": "Provide product images or a precise product brief, audience, market, truthful benefit, duration, ratio, placement, required/forbidden claims, brand rules, CTA, voiceover preference, and any cast or first/last-frame references.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Make a 15-second 9:16 commercial for this insulated bottle. Preserve its exact teal color and label, show the leakproof lid causing the bag-safe benefit, use natural sound plus a short English voiceover, and end on the supplied packshot with “Carry calm.”"
          }
        ]
      },
      "output": {
        "Media type": "One final MP4 plus treatment, shot manifest, claim ledger, and operation receipt",
        "Default quantity": "1 commercial; one cut only unless alternates are explicitly requested",
        "Content per video": "Hook, product-caused proof/progression, payoff, and CTA within the requested duration",
        "Default layout": "User-requested placement ratio; preserve a supplied end card when provided",
        "Model policy": "Kling 3 precise product/frames; Kling Omni complex/motion references; Seedance 2.5 long audiovisual/artistic/performance; Veo source-image synchronous audio; Seedance 2.0 routine; H3 large/natural motion",
        "Downstream use": "Human brand/legal review and manual campaign publishing"
      },
      "similarSkills": [
        {
          "id": "minimalist-product-ad-generator",
          "displayName": "Minimalist Product Ad Generator",
          "difference": "Minimalist Product Ad Generator: Produce a sparse, product-faithful commercial with approved copy and beat-level continuity. In contrast, Make Product Commercial: Produce one truthful, continuity-safe short commercial in which the supplied product drives the action."
        },
        {
          "id": "product-launch-video",
          "displayName": "Product Launch Video",
          "difference": "Product Launch Video: Product launch-film plan with hook, reveal, and end-card arc. In contrast, Make Product Commercial: Produce one truthful, continuity-safe short commercial in which the supplied product drives the action."
        }
      ]
    },
    {
      "id": "make-selfie",
      "displayName": "Make Selfie",
      "description": "Turn one or two everyday photos into one realistic selfie.",
      "category": "Person appearance",
      "categoryTags": [
        "person-appearance"
      ],
      "coverImage": "/skill-covers/make-selfie.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "rose",
      "featured": false,
      "whatThisSkillDoes": [
        "Converts one ordinary person photo into one solo phone or mirror selfie.",
        "Converts two ordinary person photos into one two-person selfie without blending their identities.",
        "Reconstructs camera distance, arm/phone relationship, gaze, casual crop, wide-angle perspective, light, and everyday background."
      ],
      "howToUse": {
        "summary": "Provide one or two authorized person photos and name arm-length or mirror selfie, setting, mood, orientation, and who holds the phone.",
        "promptExamples": [
          {
            "title": "Make a solo selfie",
            "prompt": "Turn this daily portrait into a natural arm-length window-light selfie at home."
          },
          {
            "title": "Make a two-person selfie",
            "prompt": "Combine these two people into one casual cafe selfie, with person 1 holding the phone and person 2 beside them."
          }
        ]
      },
      "output": {
        "Media type": "One realistic selfie image",
        "Default quantity": "1",
        "Content per image": "Exactly the one or two supplied people in one selfie scene",
        "Default layout": "One continuous phone-camera frame; no collage",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Personal social photos, travel memories, and casual group portraits"
      }
    },
    {
      "id": "make-silhouette",
      "displayName": "Make Silhouette",
      "description": "Turn a subject into a recognizable silhouette.",
      "category": "Social and layout",
      "categoryTags": [
        "social-and-layout"
      ],
      "coverImage": "/skill-covers/make-silhouette.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "slate",
      "featured": false,
      "whatThisSkillDoes": [
        "Isolates one target and converts its interior to a uniform fill.",
        "Preserves gesture-defining contour details and optional negative spaces."
      ],
      "howToUse": {
        "summary": "Provide source, target, fill color, background, and internal cutout rule. #### Make a silhouette ```text Turn only the cyclist into solid black on the sunset; retain bicycle spoke gaps. ``` ## Workflow 1. Define target contour, important negative spaces, ground contact, and background. 2. Run `gpt-image` v1.0 with `quality: \"medium\"`, `imageSize: \"2K\"`, the supplied references, the requested or source-preserving ratio, `batchCount: 1`, and one result. 3. Fill target uniformly; do not darken the whole image. 4. Inspect edge continuity, accessories, negative spaces, halos, holes, and recognizable pose. 5. Hand off to `$remove-background` when transparent alpha is requested.",
        "promptExamples": [
          {
            "title": "Make a silhouette",
            "prompt": "Turn only the cyclist into solid black on the sunset; retain bicycle spoke gaps."
          }
        ]
      },
      "output": {
        "Media type": "One silhouette image",
        "Default quantity": "1",
        "Content per image": "One target silhouette",
        "Default layout": "Source composition",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Icons, posters, and profile graphics"
      }
    },
    {
      "id": "make-talking-video",
      "displayName": "Make Talking Video",
      "description": "Create one talking-person video from an authorized or fictional portrait and approved script with synchronized speech.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/make-talking-video.png",
      "routeLabel": "Consent-safe talking-video generation",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Combines a consent-cleared face, exact script, voice and performance direction.",
        "Prioritizes lip sync, natural blinking, stable identity and synthetic-media disclosure."
      ],
      "howToUse": {
        "summary": "Provide authorized portrait or fictional presenter, exact script, language, voice, ratio and use.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Make this fictional presenter say exactly 欢迎来到今天的设计课 in Mandarin; calm tone, locked camera, 9:16."
          }
        ]
      },
      "output": {
        "Media type": "One MP4 video",
        "Default quantity": "1",
        "Content per video": "One authorized or fictional presenter speaking the approved script",
        "Default layout": "User-requested delivery format",
        "Model policy": "Seedance 2.5 for audio-visual synchronization; no fallback to a model whose lip-sync inputs are unverified",
        "Downstream use": "Presenters, explainers and messages"
      }
    },
    {
      "id": "make-thumbnail",
      "displayName": "Make Thumbnail",
      "description": "Create a platform-aware cover or thumbnail.",
      "category": "Social and layout",
      "categoryTags": [
        "social-and-layout"
      ],
      "coverImage": "/skill-covers/make-thumbnail.png",
      "routeLabel": "Platform research plus GPT Image 2",
      "tone": "amber",
      "featured": false,
      "whatThisSkillDoes": [
        "Checks current official size, ratio, file, and safe-area rules before design.",
        "Creates one focal image with mobile-readable copy and protected UI zones."
      ],
      "howToUse": {
        "summary": "Provide platform, placement, market, topic, exact copy, assets, and tone. #### Make a video thumbnail ```text Check current YouTube requirements and create one thumbnail titled 7 DESK FIXES. ``` ## Workflow 1. Research official current documentation; record date, dimensions, ratio, file limits, and occluded zones. 2. Freeze exact copy; choose one focal subject, one promise, and one contrast system. 3. Use `gpt-image` v1.0, GPT Image 2 Medium, supplied assets, platform ratio, `batchCount: 1`. 4. Keep text and faces out of unsafe zones; avoid misleading imagery and unprovided logos. 5. Inspect at native size and small mobile preview for exact copy, crop resilience, contrast, and compliance. When this Skill selects GPT Image 2, use `quality: \"medium\"` and `imageSize: \"2K\"` by default; change either only when the user explicitly requests another tier.",
        "promptExamples": [
          {
            "title": "Make a video thumbnail",
            "prompt": "Check current YouTube requirements and create one thumbnail titled 7 DESK FIXES."
          }
        ]
      },
      "output": {
        "Media type": "One platform thumbnail image",
        "Default quantity": "1",
        "Content per image": "One focal subject and concise message",
        "Default layout": "Current platform ratio and safe zones",
        "Model policy": "GPT Image 2 Medium",
        "Downstream use": "Video, podcast, and platform covers"
      },
      "similarSkills": [
        {
          "id": "ai-banner-design",
          "displayName": "AI Banner Design",
          "difference": "AI Banner Design: Research and design channel-ready commercial banners. In contrast, Make Thumbnail: Create a platform-aware cover or thumbnail."
        },
        {
          "id": "poster-design",
          "displayName": "Poster Design",
          "difference": "Poster Design: Create distinctive posters across varied art directions. In contrast, Make Thumbnail: Create a platform-aware cover or thumbnail."
        },
        {
          "id": "product-detail-page",
          "displayName": "Product Detail Page",
          "difference": "Product Detail Page: Build modular ecommerce detail-page image sets. In contrast, Make Thumbnail: Create a platform-aware cover or thumbnail."
        }
      ]
    },
    {
      "id": "make-video-intro",
      "displayName": "Make Video Intro",
      "description": "Create one short reusable branded intro with exact identity, legible title and a clean transition into program content.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/make-video-intro.png",
      "routeLabel": "GPT Image 2 plus video generation",
      "tone": "amber",
      "featured": false,
      "whatThisSkillDoes": [
        "Turns approved logo, name and sonic direction into compact motion identity.",
        "Keeps intros brief and tests readability at actual viewing size."
      ],
      "howToUse": {
        "summary": "Provide logo, exact title, colors, tone, runtime, ratio, sound direction and ending transition.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a 4-second 16:9 intro for FIELD NOTES; exact title, cream and forest green, paper-fold motion, page-turn sound."
          }
        ]
      },
      "output": {
        "Media type": "One MP4 video",
        "Default quantity": "1",
        "Content per video": "One short branded opening sequence",
        "Default layout": "User-requested delivery format",
        "Model policy": "GPT Image 2 Medium/2K for title-safe key art, then Kling 3.0 for precise-frame animation",
        "Downstream use": "Channels, shows and branded series"
      },
      "similarSkills": [
        {
          "id": "brand-stream-mg",
          "displayName": "Brand Stream MG",
          "difference": "Brand Stream MG: Produce one logo-led neon brand motion with explicit inputs, boundaries, and acceptance checks. In contrast, Make Video Intro: Create one short reusable branded intro with exact identity, legible title and a clean transition into program content."
        },
        {
          "id": "dot-matrix-brand-wordmark-motion",
          "displayName": "Dot Matrix Brand Wordmark Motion",
          "difference": "Dot Matrix Brand Wordmark Motion: Produce one exact brand wordmark dot-matrix motion with explicit inputs, boundaries, and acceptance checks. In contrast, Make Video Intro: Create one short reusable branded intro with exact identity, legible title and a clean transition into program content."
        },
        {
          "id": "poster-motion",
          "displayName": "Poster Motion",
          "difference": "Poster Motion: Animate an uploaded poster into one readable, full-frame motion poster. In contrast, Make Video Intro: Create one short reusable branded intro with exact identity, legible title and a clean transition into program content."
        }
      ]
    },
    {
      "id": "make-wallet-photo",
      "displayName": "Make Wallet Photo",
      "description": "Prepare one wallet-size print portrait from an authorized photo using a real print dimension, crop and bleed specification.",
      "category": "Social and memory",
      "categoryTags": [
        "social-and-memory"
      ],
      "coverImage": "/skill-covers/make-wallet-photo.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Formats a portrait for a named wallet print size instead of guessing one universal dimension.",
        "Preserves the original face and checks crop, background and print layout without turning it into an ID photo."
      ],
      "howToUse": {
        "summary": "Provide an authorized portrait, printer or country size, finish, crop, sheet quantity and resolution.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Prepare one 2.5×3.5 inch wallet portrait at 300 dpi; chest-up crop, neutral background, preserve face and clothing."
          }
        ]
      },
      "output": {
        "Media type": "One wallet-size portrait file",
        "Default quantity": "1",
        "Content per image": "One print-dimensioned portrait",
        "Default layout": "User-requested or print-defined format",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Personal wallet prints"
      },
      "similarSkills": [
        {
          "id": "id-photo-format",
          "displayName": "ID Photo Format",
          "difference": "ID Photo Format: Research the authority, correct the capture, then crop around the measured head. In contrast, Make Wallet Photo: Prepare one wallet-size print portrait from an authorized photo using a real print dimension, crop and bleed specification."
        },
        {
          "id": "professional-headshot",
          "displayName": "Professional Headshot",
          "difference": "Professional Headshot: Research the channel, then create a properly posed and lit professional portrait. In contrast, Make Wallet Photo: Prepare one wallet-size print portrait from an authorized photo using a real print dimension, crop and bleed specification."
        }
      ]
    },
    {
      "id": "make-wedding-photo",
      "displayName": "Make Wedding Photo",
      "description": "Create one wedding-style portrait of consenting adults from authorized references while preserving both identities and avoiding false-event claims.",
      "category": "Social and memory",
      "categoryTags": [
        "social-and-memory"
      ],
      "coverImage": "/skill-covers/make-wedding-photo.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "rose",
      "featured": false,
      "whatThisSkillDoes": [
        "Places authorized adults in a chosen wedding setup with controlled wardrobe, pose and venue.",
        "Preserves both identities independently and treats generated scenes as creative composites, not event evidence."
      ],
      "howToUse": {
        "summary": "Provide authorized photos of each adult, wardrobe, pose, venue, cultural details and ratio.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create one clearly synthetic editorial wedding portrait from these two consenting adults; garden at dusk, modern red qipao."
          }
        ]
      },
      "output": {
        "Media type": "One wedding-style photo",
        "Default quantity": "1",
        "Content per image": "One consent-cleared wedding portrait",
        "Default layout": "User-requested or print-defined format",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Creative portraits and private keepsakes"
      }
    },
    {
      "id": "micro-expression-performance",
      "displayName": "Micro-Expression Performance",
      "description": "Direct a restrained emotional performance without changing the existing character, scene, dialogue, or camera intention.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Character acting-layer direction",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Converts an image, script beat, or emotion phrase into observable acting beats.",
        "Controls gaze, brow, mouth, breath, hands, tempo, peak, and recovery without claiming facial rigging or lip sync.",
        "Keeps the acting layer subordinate to the supplied scene and camera intent."
      ],
      "howToUse": {
        "summary": "Provide a character image, script beat, or emotion phrase, plus shot duration and intensity. Canvas-capable Agents may save the approved performance pack there; otherwise they return it in chat or local delivery.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "让这位角色在 5 秒内听到消息后先屏住呼吸、移开视线、忍住眼泪，最后恢复平静；保留原来的房间和中景机位。"
          }
        ]
      },
      "output": {
        "Media type": "One performance prompt pack and one requested MP4 shot",
        "Default quantity": "1",
        "Content per video": "One restrained emotional performance beat",
        "Default layout": "Source or user-requested ratio",
        "Model policy": "Current catalog-selected performance-capable video route",
        "Downstream use": "Character scenes and drama shots"
      }
    },
    {
      "id": "minimalist-product-ad-generator",
      "displayName": "Minimalist Product Ad Generator",
      "description": "Produce a sparse, product-faithful commercial with approved copy and beat-level continuity.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Product-faithful minimalist film",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Locks product truth, product geometry, copy, CTA, and a minimalist visual direction before generation.",
        "Uses three independent anchor roles—hero, material/function detail, and final composition—to preserve product continuity.",
        "Creates a timecoded, restrained product film and verifies product, copy, audio, and final delivery."
      ],
      "howToUse": {
        "summary": "Provide authorized product images, exact facts and allowed claims, audience, benefit, duration, ratio, approved copy/CTA, brand constraints, audio plan, and forbidden content. State whether translated copy is allowed; never silently translate or alter supplied wording.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a 10-second 9:16 minimalist film for this matte-black travel mug. Preserve the exact lid and logo, show one leakproof proof moment, use the supplied “Carry calm.” end card unchanged, and keep the visual language sparse, dark, and tactile."
          }
        ]
      },
      "output": {
        "Media type": "One final MP4 plus product-fact ledger, anchor set, beat table, copy ledger, and operation receipts",
        "Default quantity": "1 minimalist product film",
        "Content per video": "A sparse product progression, one truthful proof/payoff, and exact approved end treatment",
        "Default layout": "User-requested duration, ratio, copy language, and audio plan",
        "Model policy": "Kling 3 precise product control; Kling Omni complex references; Seedance 2.5 audiovisual/artistic; Veo eligible synchronous audio; Seedance 2.0 routine; H3 justified large motion",
        "Downstream use": "Human brand, claim, product-fidelity, and publication review"
      },
      "similarSkills": [
        {
          "id": "make-product-commercial",
          "displayName": "Make Product Commercial",
          "difference": "Make Product Commercial: Produce one truthful, continuity-safe short commercial in which the supplied product drives the action. In contrast, Minimalist Product Ad Generator: Produce a sparse, product-faithful commercial with approved copy and beat-level continuity."
        },
        {
          "id": "product-launch-video",
          "displayName": "Product Launch Video",
          "difference": "Product Launch Video: Product launch-film plan with hook, reveal, and end-card arc. In contrast, Minimalist Product Ad Generator: Produce a sparse, product-faithful commercial with approved copy and beat-level continuity."
        }
      ]
    },
    {
      "id": "music-video-subtitle-generator",
      "displayName": "Music Video Subtitle Generator",
      "description": "Produce a music-led visual video with exact timed subtitles and audio-continuity QC.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Lyric-locked visual MV composition",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Locks the authorized recording, song window, exact lyrics, subtitle language, and viewing format before visual work.",
        "Plans visual clips and subtitle behavior around musical sections without altering the master track.",
        "Assembles one subtitle-first MV and checks lyric, timing, visual, and audio continuity end to end."
      ],
      "howToUse": {
        "summary": "Provide a local or authorized recording, authoritative lyrics when subtitles are required, duration/window, ratio, visual direction, authorized footage or references, subtitle language/style, required moments, and rights declaration.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a 30-second 9:16 lyric-led MV from this licensed track and the supplied night-street references. Show only the provided Mandarin lyrics, keep each line readable for its sung timing, preserve the master audio, and transition from quiet neon to energetic motion at the chorus."
          }
        ]
      },
      "output": {
        "Media type": "One final MP4 plus music map, subtitle cue sheet, EDL, asset manifest, and operation receipts",
        "Default quantity": "1 subtitle-first MV",
        "Content per video": "Authorized music, timed exact subtitles, and a coherent visual arc",
        "Default layout": "User-requested ratio, music window, subtitle language/style, and resolution",
        "Model policy": "Deterministic subtitle/audio finishing; current catalog video route only for needed visual clips",
        "Downstream use": "Human rights, lyric, audio, creative, and publication review"
      }
    },
    {
      "id": "narrative-video-prompt",
      "displayName": "Narrative Video Prompt",
      "description": "Structured prompt for one narrative video shot.",
      "category": "Media workflows",
      "categoryTags": [
        "media-workflows"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Agent-authored structured brief",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Freezes the request, approved facts, source assets, constraints, and acceptance checks.",
        "Produces one structured brief for: structured prompt for one narrative video shot.",
        "Preserves user-approved facts and assets; flags unknowns rather than inventing them."
      ],
      "howToUse": {
        "summary": "Provide the desired outcome, source material, audience, format, fixed facts/assets, and any must-not-change constraints. This Skill plans and validates; it does not claim an unverified provider execution route.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a structured prompt for one narrative video shot from my approved source material. Preserve the named facts and clearly identify every assumption."
          }
        ]
      },
      "output": {
        "Media type": "Structured planning brief",
        "Default quantity": "One brief",
        "Content per artifact": "Objective, inputs, fixed facts, constraints, output structure, risks, and acceptance checks",
        "Default layout": "Validated Markdown",
        "Model policy": "Agent-authored planning; no paid media generation or unverified provider call",
        "Downstream use": "$generate-video or another verified Atom selected by Router intent matching"
      },
      "similarSkills": [
        {
          "id": "cinematic-video-prompt",
          "displayName": "Cinematic Video Prompt",
          "difference": "Cinematic Video Prompt: Cinematic or image-to-video motion prompt. In contrast, Narrative Video Prompt: Structured prompt for one narrative video shot."
        },
        {
          "id": "short-audiovisual-prompt",
          "displayName": "Short Audiovisual Prompt",
          "difference": "Short Audiovisual Prompt: Compact single-shot audiovisual video prompt. In contrast, Narrative Video Prompt: Structured prompt for one narrative video shot."
        },
        {
          "id": "cross-model-video-prompt-adapter",
          "displayName": "Cross-model Video Prompt Adapter",
          "difference": "Cross-model Video Prompt Adapter: Semantic adaptation of an existing video prompt. In contrast, Narrative Video Prompt: Structured prompt for one narrative video shot."
        }
      ]
    },
    {
      "id": "narrative-video-storyboard",
      "displayName": "Narrative Video Storyboard",
      "description": "Multi-shot narrative video storyboard.",
      "category": "Media workflows",
      "categoryTags": [
        "media-workflows"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Agent-authored structured brief",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Freezes the request, approved facts, source assets, constraints, and acceptance checks.",
        "Produces one structured brief for: multi-shot narrative video storyboard.",
        "Preserves user-approved facts and assets; flags unknowns rather than inventing them."
      ],
      "howToUse": {
        "summary": "Provide the desired outcome, source material, audience, format, fixed facts/assets, and any must-not-change constraints. This Skill plans and validates; it does not claim an unverified provider execution route.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a multi-shot narrative video storyboard from my approved source material. Preserve the named facts and clearly identify every assumption."
          }
        ]
      },
      "output": {
        "Media type": "Structured planning brief",
        "Default quantity": "One brief",
        "Content per artifact": "Objective, inputs, fixed facts, constraints, output structure, risks, and acceptance checks",
        "Default layout": "Validated Markdown",
        "Model policy": "Agent-authored planning; no paid media generation or unverified provider call",
        "Downstream use": "$plan-film-storyboard or another verified Atom selected by Router intent matching"
      }
    },
    {
      "id": "orchestrate-multi-step-workflow",
      "displayName": "Multi-step Workflow Orchestration",
      "description": "Plan and coordinate a creative request that needs multiple Skills, research, or material handoffs.",
      "category": "Platform tooling",
      "categoryTags": [
        "platform-tooling"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Dependency-aware multi-Skill planning",
      "tone": "ink",
      "featured": false,
      "whatThisSkillDoes": [
        "Builds a dependency-aware plan for work that cannot be completed by one Atom.",
        "Binds intermediate outputs and applies one final acceptance gate."
      ],
      "howToUse": {
        "summary": "Use this Skill only after routing identifies multiple dependent operations, research, ambiguity, or material risk.",
        "promptExamples": [
          {
            "title": "Plan a campaign workflow",
            "prompt": "Plan a multi-step workflow to research a product claim, create a product scene, then compose the approved image into a social carousel."
          }
        ]
      },
      "output": {
        "Media type": "Multi-step route plan",
        "Default quantity": "1 dependency-aware plan",
        "Content per image": "Not applicable",
        "Default layout": "Structured DAG with inputs, handoffs, and final acceptance",
        "Model policy": "Each selected Skill owns its model choice",
        "Downstream use": "Coordinated creative execution",
        "Every `gpt-image` / GPT Image 2 call defaults to `quality": "\"medium\"` and `imageSize: \"2K\"`. Use another quality or resolution only when the user explicitly requests it; cost or speed preference alone must not silently reduce this default.",
        "Route `$animate-image` directly to `kling` v1.0 with `modelName": "Kling_3_0`, one source image, one result, 5 seconds, and audio off by default.",
        "For `$make-mugshot-photo`, route directly to `gpt-image` v1.0 / GPT Image 2 Medium at 2K with one 3": "4 result. Do not call `mugshot-creator` or another Tools-class wrapper; the Atom owns the fictional-label and non-evidence safeguards.",
        "For video, route large-amplitude motion to MiniMax H3; up to four image references or a motion-reference video to Kling V3 Omni; precise first/last-frame or product control to Kling V3; long multimodal, audio-visual, artistic, or talking-performance work to Seedance 2.5; source-image shots requiring premium synchronous dialogue/SFX in 16": "9 or 9:16 to Veo 3.1; routine image-led work to Seedance 2.0; and lightweight validation to Seedance Mini only when cataloged."
      }
    },
    {
      "id": "outfit-design",
      "displayName": "Outfit Design",
      "description": "Invent or redesign a coordinated outfit.",
      "category": "Fashion workflow",
      "categoryTags": [
        "fashion-workflow"
      ],
      "coverImage": "/skill-covers/outfit-design.png",
      "routeLabel": "Outfit Generator with GPT Image 2 reference-aware route",
      "tone": "violet",
      "featured": false,
      "whatThisSkillDoes": [
        "Designs a complete new look or changes named clothing/accessory slots on one person.",
        "Separates the high-level fashion concept from concrete garment construction before prompting.",
        "Preserves the supplied person's identity, body, pose, hands, and locked background.",
        "Routes supplied real garments to Virtual Try-On instead of redesigning them.",
        "Returns one finished fashion image per named design direction, never a component board or collage unless explicitly requested elsewhere."
      ],
      "howToUse": {
        "summary": "#### Design a complete look",
        "promptExamples": [
          {
            "title": "Design a complete look",
            "prompt": "Redesign this person’s outfit as modern coastal tailoring in cream and navy."
          },
          {
            "title": "Keep one existing piece",
            "prompt": "Create a new evening outfit around this jacket and leave the jacket unchanged."
          },
          {
            "title": "Change one wardrobe slot",
            "prompt": "Replace only the trousers with a sculptural wide-leg design in charcoal wool."
          }
        ]
      },
      "output": {
        "Media type": "One finished fashion image per named direction",
        "Default quantity": "1",
        "Default route": "`outfit-generator` v1.0 for one-person text redesign",
        "Reference-aware route": "GPT Image 2 Medium/2K",
        "Required preservation": "Identity, body proportions, pose, hands, background, camera, crop, and protected pieces",
        "Downstream use": "Fashion Photoshoot, Change Pose, Poster Design, AI Banner Design, Photo Collage, and lookbook workflows"
      }
    },
    {
      "id": "paper-collage-explainer-generator",
      "displayName": "Paper Collage Explainer Generator",
      "description": "Turn an idea into an approved halftone paper-collage plan, tactile clips, and optional assembly.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Approved cut-paper visual-metaphor production",
      "tone": "orange",
      "featured": false,
      "whatThisSkillDoes": [
        "Converts each idea or beat into an object-led visual metaphor rather than relying on on-screen text.",
        "Locks a coherent material system—halftone cut-outs, color fields, cream keylines, paper grain, torn edges, and soft shadows—before generation.",
        "Uses approved final stills as the end-state anchor for readable stop-motion paper assembly."
      ],
      "howToUse": {
        "summary": "Provide the concept, source line or story beats, audience/context, ratio, duration, number of segments, and any explicitly requested narration, music, subtitles, or authorized assets.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "把“城市树木会降低街道热岛效应”做成三个 16:9 的纸艺拼贴解释镜头。先给我隐喻和静帧方案；不要旁白、音乐或字幕，保留自然的纸张滑动和按压音。"
          }
        ]
      },
      "output": {
        "Media type": "One approved production plan, one still per approved beat, and requested MP4 clips or assembly",
        "Default quantity": "One to three beats unless the user specifies another count",
        "Content per artifact": "Visual metaphor, approved end-state, cut-paper motion contract, and QA result",
        "Default layout": "16:9; user-requested ratio overrides",
        "Model policy": "GPT Image 2 Medium/2K for stills; current catalog-selected video route for clips; no standalone audio claim",
        "Downstream use": "Editorial explainers, social B-roll, and approved multi-clip assembly"
      }
    },
    {
      "id": "papercraft-stop-motion-explainer",
      "displayName": "Papercraft Stop-Motion Explainer",
      "description": "Turn a topic into an approved paper-diorama explainer with tactile stills, stop-motion shots, and optional assembly.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Layered physical-paper education production",
      "tone": "orange",
      "featured": false,
      "whatThisSkillDoes": [
        "Translates one learning goal into a paper visual metaphor, characters, props, scenes, and staged depth.",
        "Requires visible fibers, folds, cut edges, thickness, physical shadows, and paper mechanisms rather than a superficial paper texture.",
        "Supports a full production plan or an explicitly requested single asset without forcing unnecessary phases."
      ],
      "howToUse": {
        "summary": "Provide topic or source material, audience, ratio, duration, and whether you want a plan, still, storyboard, short shot, or full explainer. Canvas-capable Agents may retain plan, storyboard, and approvals there; otherwise use chat or local delivery.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "用分层纸雕和拉杆机关解释火山喷发：面向小学生，30 秒横版。先给三个视觉隐喻和一个四层纸艺布景方案，不要旁白或音乐。"
          }
        ]
      },
      "output": {
        "Media type": "Approved production plan, requested stills/storyboard, and MP4 shots or assembly",
        "Default quantity": "One compact explainer package",
        "Content per artifact": "Learning beat, physical-paper staging, motion contract, and QA",
        "Default layout": "16:9 unless requested otherwise",
        "Model policy": "Current verified image route for stills and catalog-selected video route for shots; no standalone audio claim",
        "Downstream use": "Science, education, and knowledge shorts"
      }
    },
    {
      "id": "photo-collage",
      "displayName": "Photo Collage",
      "description": "Arrange original photos into one intentional collage.",
      "category": "Layout / composition",
      "categoryTags": [
        "layout-composition"
      ],
      "coverImage": "/skill-covers/photo-collage.png",
      "routeLabel": "Source-faithful collage composition",
      "tone": "cyan",
      "featured": false,
      "whatThisSkillDoes": [
        "Assigns a role and importance to every supplied photo before choosing a layout.",
        "Protects faces, products, gestures, and other focal regions when cropping photos into panels.",
        "Converts an artistic theme into one visible construction idea instead of adding random collage decoration.",
        "Chooses deterministic composition for clean layouts and a collage-capable image route only for genuinely generative treatments.",
        "Checks source coverage, crop safety, hierarchy, spacing, and absence of invented people, products, or text."
      ],
      "howToUse": {
        "summary": "Attach two to ten photos and describe the layout, mood, output ratio, and which image should lead.",
        "promptExamples": [
          {
            "title": "Create a clean photo grid",
            "prompt": "Arrange these six travel photos into one clean 4:5 grid with the mountain portrait as the main image."
          },
          {
            "title": "Create an editorial collage",
            "prompt": "Turn these product photos into one restrained editorial collage with overlapping paper frames."
          },
          {
            "title": "Create a scrapbook collage",
            "prompt": "Make one playful scrapbook collage from these party photos without changing anyone's face."
          },
          {
            "title": "Create an artistic collage",
            "prompt": "Turn these family archive photos into an artistic collage about fragmented memory while keeping everyone recognisable."
          }
        ]
      },
      "output": {
        "Media type": "One finished photo-collage image plus a compact source and acceptance record",
        "Default quantity": "1 separate collage image",
        "Content per image": "Two to ten supplied photos arranged as visible panels or layers",
        "Default layout": "Source-driven; 4:5 when the user requests a social collage but supplies no ratio",
        "Video output": "No",
        "Model policy": "Prefer deterministic composition for clean layouts and `ai-collage-maker` for generative collage treatments",
        "Downstream use": "Social photo collections, editorial layouts, moodboards, memory collages, product stories, and printable photo arrangements"
      },
      "similarSkills": [
        {
          "id": "compose-lookbook",
          "displayName": "Compose Lookbook",
          "difference": "Compose Lookbook: Arrange several outfit photos into one editorial page. In contrast, Photo Collage: Arrange original photos into one intentional collage."
        },
        {
          "id": "create-social-carousel",
          "displayName": "Create Social Carousel",
          "difference": "Create Social Carousel: Create a coherent mobile-first social carousel as separately generated ordered pages. In contrast, Photo Collage: Arrange original photos into one intentional collage."
        },
        {
          "id": "create-image-deck",
          "displayName": "Create Image Deck",
          "difference": "Create Image Deck: Plan, generate, inspect, and package a consistent image-first deck. In contrast, Photo Collage: Arrange original photos into one intentional collage."
        }
      ]
    },
    {
      "id": "plan-comic-storyboard",
      "displayName": "Plan Comic Storyboard",
      "description": "Convert a story into a validated page-by-page comic production manifest.",
      "category": "Narrative and comics",
      "categoryTags": [
        "narrative-and-comics"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Agent-authored structured storyboard",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Expands a thin premise only when requested, then preserves its characters, causal spine, tone, and ending.",
        "Extracts a concise visual character bible and one reusable English art-style description.",
        "Plans the exact requested number of pages with panel-level action, dialogue, composition, and continuity anchors."
      ],
      "howToUse": {
        "summary": "Provide the story or premise, page count, reading direction, page ratio, language, audience, style, and any fixed characters or ending.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Plan a six-page vertical Chinese comic from this premise: a night-shift courier discovers that every undelivered parcel contains a forgotten memory. Keep the ending bittersweet and use no more than four panels per page."
          }
        ]
      },
      "output": {
        "Media type": "Structured comic storyboard manifest",
        "Default quantity": "One manifest containing the requested pages",
        "Content per artifact": "Project brief, style prompt, character bible, pages, panels, dialogue, layout, and continuity locks",
        "Default layout": "Validated Markdown or JSON following the bundled schema",
        "Model policy": "Agent-authored planning; no paid image generation",
        "Downstream use": "Character reference creation and independent comic-page rendering"
      },
      "similarSkills": [
        {
          "id": "develop-story",
          "displayName": "Develop Story",
          "difference": "Develop Story: Build or repair a story foundation before medium-specific production. In contrast, Plan Comic Storyboard: Convert a story into a validated page-by-page comic production manifest."
        },
        {
          "id": "render-comic-page",
          "displayName": "Render Comic Page",
          "difference": "Render Comic Page: Render one storyboarded comic page with character, style, panel, and dialogue continuity. In contrast, Plan Comic Storyboard: Convert a story into a validated page-by-page comic production manifest."
        },
        {
          "id": "plan-film-storyboard",
          "displayName": "Plan Film Storyboard",
          "difference": "Plan Film Storyboard: Turn narrative material into timed atomic film shots with continuity and generation handoffs. In contrast, Plan Comic Storyboard: Convert a story into a validated page-by-page comic production manifest."
        }
      ]
    },
    {
      "id": "plan-film-storyboard",
      "displayName": "Plan Film Storyboard",
      "description": "Turn narrative material into timed atomic film shots with continuity and generation handoffs.",
      "category": "Narrative and comics",
      "categoryTags": [
        "narrative-and-comics"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Agent-authored shootable shot manifest",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Freezes source facts and adaptation permission before translating abstract writing into visible or audible evidence.",
        "Plans actor blocking, props, screen direction, camera, sound, duration, and coverage as atomic shots.",
        "Produces a validated shot manifest and downstream task brief without claiming unexecuted footage is production-approved."
      ],
      "howToUse": {
        "summary": "Provide the source, live/AI/hybrid production mode, duration, ratio, language, fixed facts, cast/assets, and allowed change level: faithful, visual, pacing, or explicitly scoped story changes.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Turn episode 1 into a 75-second 9:16 AI-video storyboard. Stay faithful to the plot, externalize internal thoughts through behavior and sound, and keep each generated shot under six seconds."
          }
        ]
      },
      "output": {
        "Media type": "Structured film storyboard manifest",
        "Default quantity": "One manifest containing the required atomic shots",
        "Content per artifact": "Facts, permissions, scenes, timed shots, blocking, camera, sound, continuity, coverage, risks, and downstream briefs",
        "Default layout": "Validated Markdown or JSON with stable scene/shot IDs",
        "Model policy": "Agent-authored planning; no paid media generation",
        "Downstream use": "Live production, video-generation Atoms, and editing/assembly"
      },
      "similarSkills": [
        {
          "id": "develop-story",
          "displayName": "Develop Story",
          "difference": "Develop Story: Build or repair a story foundation before medium-specific production. In contrast, Plan Film Storyboard: Turn narrative material into timed atomic film shots with continuity and generation handoffs."
        },
        {
          "id": "plan-comic-storyboard",
          "displayName": "Plan Comic Storyboard",
          "difference": "Plan Comic Storyboard: Convert a story into a validated page-by-page comic production manifest. In contrast, Plan Film Storyboard: Turn narrative material into timed atomic film shots with continuity and generation handoffs."
        },
        {
          "id": "render-comic-page",
          "displayName": "Render Comic Page",
          "difference": "Render Comic Page: Render one storyboarded comic page with character, style, panel, and dialogue continuity. In contrast, Plan Film Storyboard: Turn narrative material into timed atomic film shots with continuity and generation handoffs."
        }
      ]
    },
    {
      "id": "poster-design",
      "displayName": "Poster Design",
      "description": "Create distinctive posters across varied art directions.",
      "category": "Layout / composition",
      "categoryTags": [
        "layout-composition"
      ],
      "coverImage": "/skill-covers/poster-design.png",
      "routeLabel": "Model-routed poster generation",
      "tone": "coral",
      "featured": true,
      "whatThisSkillDoes": [
        "Distills a theme or campaign into one message, one focal subject, one visual metaphor, and a readable copy hierarchy.",
        "Handles promotional flyers as an information-richer poster mode with explicit offer, event, CTA, contact, and print-format checks.",
        "Selects an art direction from independent composition, image-language, typography, color, and material axes instead of imposing one house style.",
        "Routes the current image model before considering an optional specialist endpoint.",
        "Generates one poster, checks communication and visual quality, and retries only the failed property."
      ],
      "howToUse": {
        "summary": "Provide a theme, exact copy, intended format, and any product, person, brand, or visual references you want preserved.",
        "promptExamples": [
          {
            "title": "Create a campaign poster",
            "prompt": "Create a bold Chinese campaign poster for these sneakers titled “舒适每一步”."
          },
          {
            "title": "Create from a reference photo",
            "prompt": "Turn this street photo into an expressive cultural poster titled \"CITY IN MOTION\"."
          },
          {
            "title": "Explore an art direction",
            "prompt": "Create an experimental poster about artificial memory with an unexpected visual style."
          },
          {
            "title": "Create a promotional flyer",
            "prompt": "Create an A5 launch flyer from these product images using the headline “SUMMER DROP” and the supplied event details."
          }
        ]
      },
      "output": {
        "Media type": "One finished poster or promotional-flyer image and a compact acceptance record",
        "Default quantity": "1 separate image",
        "Content per image": "One communication objective, one focal system, and one deliberate copy hierarchy",
        "Default layout": "4:5 for social or 3:4 for general use unless specified",
        "Video output": "No",
        "Model policy": "Route the best current typography- and composition-capable image model; specialist poster endpoints are optional",
        "Downstream use": "Campaigns, launches, retail offers, event flyers, editorial stories, cultural communication, music, fashion, art, print, and social promotion"
      },
      "similarSkills": [
        {
          "id": "ai-banner-design",
          "displayName": "AI Banner Design",
          "difference": "AI Banner Design: Research and design channel-ready commercial banners. In contrast, Poster Design: Create distinctive posters across varied art directions."
        },
        {
          "id": "make-thumbnail",
          "displayName": "Make Thumbnail",
          "difference": "Make Thumbnail: Create a platform-aware cover or thumbnail. In contrast, Poster Design: Create distinctive posters across varied art directions."
        },
        {
          "id": "product-detail-page",
          "displayName": "Product Detail Page",
          "difference": "Product Detail Page: Build modular ecommerce detail-page image sets. In contrast, Poster Design: Create distinctive posters across varied art directions."
        }
      ]
    },
    {
      "id": "poster-motion",
      "displayName": "Poster Motion",
      "description": "Animate an uploaded poster into one readable, full-frame motion poster.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Final-lock-frame poster animation",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Analyzes poster layers, ratio, text hierarchy, and motion carriers.",
        "Plans one continuous reveal that settles on the supplied poster."
      ],
      "howToUse": {
        "summary": "Upload a poster and state duration, ratio, motion direction, and audio preference. Canvas-capable Agents may retain the approved plan there; otherwise use chat. #### Example ```text 把这张 9:16 海报做成 10 秒动态版：标题逐层出现，最后必须锁回原版式。 ``` ## Workflow 1. Lock poster ratio, core content, text readability, full-frame adaptation, and final lock frame. 2. Approve one timed continuous motion direction; never translate poster text unless asked. 3. Use `$generate-video` with the poster as reference; persist an `operationKey`, poll receipt, and never blind-retry. 4. Check final frame, text, layout, ratio, and unwanted audio.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "把这张 9:16 海报做成 10 秒动态版：标题逐层出现，最后必须锁回原版式。"
          }
        ]
      },
      "output": {
        "Media type": "One MP4 video",
        "Default quantity": "1",
        "Content per video": "One continuous poster activation and lock frame",
        "Default layout": "Poster ratio or nearest supported full-frame ratio",
        "Model policy": "Current catalog-selected reference-video route",
        "Downstream use": "Social motion poster"
      },
      "similarSkills": [
        {
          "id": "brand-stream-mg",
          "displayName": "Brand Stream MG",
          "difference": "Brand Stream MG: Produce one logo-led neon brand motion with explicit inputs, boundaries, and acceptance checks. In contrast, Poster Motion: Animate an uploaded poster into one readable, full-frame motion poster."
        },
        {
          "id": "dot-matrix-brand-wordmark-motion",
          "displayName": "Dot Matrix Brand Wordmark Motion",
          "difference": "Dot Matrix Brand Wordmark Motion: Produce one exact brand wordmark dot-matrix motion with explicit inputs, boundaries, and acceptance checks. In contrast, Poster Motion: Animate an uploaded poster into one readable, full-frame motion poster."
        },
        {
          "id": "make-video-intro",
          "displayName": "Make Video Intro",
          "difference": "Make Video Intro: Create one short reusable branded intro with exact identity, legible title and a clean transition into program content. In contrast, Poster Motion: Animate an uploaded poster into one readable, full-frame motion poster."
        }
      ]
    },
    {
      "id": "pov-short-film-generator",
      "displayName": "POV Short Film Generator",
      "description": "Produce a coherent first-person narrative short with POV-specific continuity and final-film QC.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Subjective narrative film composition",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Converts a premise into a locked first-person viewpoint contract instead of a third-person camera plan.",
        "Builds and generates atomic subjective actions with visual, sound, and continuity anchors.",
        "Assembles one finished film and verifies the viewpoint never breaks unintentionally."
      ],
      "howToUse": {
        "summary": "Provide the premise, intended feeling, duration, ratio, authorized references, POV identity/action constraints, visual direction, audio plan, required moments, and forbidden elements.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a 20-second 16:9 first-person short film of someone entering an abandoned greenhouse to rescue a trapped bird. The view is always their eyes; show only hands or partial body when needed, with rain on the glass and no third-person face reveal."
          }
        ]
      },
      "output": {
        "Media type": "One final MP4 plus POV spec, storyboard, continuity manifest, and operation receipts",
        "Default quantity": "1 finished POV short",
        "Content per video": "A multi-clip first-person narrative with one continuous subjective contract",
        "Default layout": "User-requested duration, ratio, visual direction, and audio plan",
        "Model policy": "Kling Omni complex references; Kling 3 precise frames; Seedance 2.5 audiovisual/artistic; Veo eligible synchronous audio; Seedance 2.0 routine; H3 justified large motion",
        "Downstream use": "Human creative, continuity, safety, and publication review"
      }
    },
    {
      "id": "preview-landscape",
      "displayName": "Preview Landscape",
      "description": "Redesign a supplied yard while preserving site geometry, access, hardscape and declared plants.",
      "category": "Space and diagrams",
      "categoryTags": [
        "space-and-diagrams"
      ],
      "coverImage": "/skill-covers/preview-landscape.png",
      "routeLabel": "GPT Image 2 landscape editing",
      "tone": "green",
      "featured": false,
      "whatThisSkillDoes": [
        "Adds a coherent planting, material and outdoor-use concept to a real site.",
        "Protects property geometry, paths, doors, grades and must-keep elements."
      ],
      "howToUse": {
        "summary": "Provide site photo, climate or location, target style, uses, maintenance level and must-keep elements.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Redesign this courtyard for a dry Mediterranean climate; keep paving and olive tree; add drought-tolerant planting and seating."
          }
        ]
      },
      "output": {
        "Media type": "One landscape preview",
        "Default quantity": "1",
        "Content per image": "The same outdoor site with one viable design direction",
        "Default layout": "Source-preserving or dimension-defined format",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive source-site editing",
        "Downstream use": "Landscape concept planning"
      }
    },
    {
      "id": "preview-paint",
      "displayName": "Preview Paint",
      "description": "Preview one specified wall or architectural surface in an exact paint color without redesigning the room.",
      "category": "Space and diagrams",
      "categoryTags": [
        "space-and-diagrams"
      ],
      "coverImage": "/skill-covers/preview-paint.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "yellow",
      "featured": false,
      "whatThisSkillDoes": [
        "Changes only declared paintable surfaces and respects trim, fixtures, openings and material boundaries.",
        "Simulates color under source lighting instead of replacing texture or flattening shadows."
      ],
      "howToUse": {
        "summary": "Provide a room photo, target surface, paint name or color value, finish and protected surfaces.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Change only the back wall to muted sage #9AA58D in eggshell; keep trim, ceiling, artwork and lighting unchanged."
          }
        ]
      },
      "output": {
        "Media type": "One paint preview",
        "Default quantity": "1",
        "Content per image": "The same space with only the selected surface recolored",
        "Default layout": "Source-preserving or dimension-defined format",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Paint selection and renovation previews"
      }
    },
    {
      "id": "primitive-folk-cgi-restyle",
      "displayName": "Primitive Folk CGI Restyle",
      "description": "Restyle a source image into readable but deliberately crude early-3D imagery, with optional awkward motion continuation.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/primitive-folk-cgi-restyle.png",
      "routeLabel": "Broad-anchor-preserving primitive-3D reconstruction",
      "tone": "green",
      "featured": false,
      "whatThisSkillDoes": [
        "Preserves broad scene anchors while releasing exact anatomy, clean mesh separation, and polished rendering.",
        "Directs sparse geometry, broken proportions, stiff movement, coarse textures, asset reuse, and naive lighting as observable production traits.",
        "Protects people and animals from identity-category changes, horror, injury, or unsafe distortion."
      ],
      "howToUse": {
        "summary": "Upload a source image and state the desired strength, ratio, prompt-only preference, or optional motion intent. Canvas-capable Agents may retain the approved treatment note there; otherwise they provide it in chat.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "把这张客厅合照改成笨拙的早期民间 3D 画面：保留三个人的位置、沙发和主色，但使用粗糙贴图、僵硬姿势和单一顶灯；不要恐怖或受伤效果。"
          }
        ]
      },
      "output": {
        "Media type": "One restyled image and optional MP4 continuation",
        "Default quantity": "1",
        "Content per artifact": "Broad-anchor-preserving primitive-3D treatment",
        "Default layout": "Source ratio unless overridden",
        "Model policy": "Current verified image-edit route; catalog-selected video route only after still approval",
        "Downstream use": "Stylized stills and short motion tests"
      }
    },
    {
      "id": "product-detail-page",
      "displayName": "Product Detail Page",
      "description": "Build modular ecommerce detail-page image sets.",
      "category": "Layout / composition",
      "categoryTags": [
        "layout-composition"
      ],
      "coverImage": "/skill-covers/product-detail-page.jpg",
      "routeLabel": "Researched modular PDP production",
      "tone": "teal",
      "featured": false,
      "whatThisSkillDoes": [
        "Researches the target platform and locale before choosing dimensions, module types, upload form, copy placement, file limits, or synthetic-media requirements.",
        "Converts verified product facts into a buyer-decision sequence rather than a stack of unrelated promotional images.",
        "Produces each hero, feature, detail, scenario, instruction, specification, comparison, trust, or closing section as an independent module.",
        "Calls existing Atom Skills when they own a required asset, then keeps product identity and the page visual system consistent across every module.",
        "Delivers separate modules as the source of truth and optionally stitches them into a long-page preview or upload asset."
      ],
      "howToUse": {
        "summary": "Provide the target platform and locale, real product images, product name/category, verified facts, required copy, brand assets, and preferred delivery form. If the platform is omitted, research the likely destinations and ask only when their delivery structures materially conflict.",
        "promptExamples": [
          {
            "title": "Create a marketplace detail page",
            "prompt": "Research the current requirements for Amazon US A+ Content, then create a modular detail page for this portable blender from the supplied product images and verified specifications."
          },
          {
            "title": "Create modules and a stitched long page",
            "prompt": "Create a Chinese ecommerce product detail page for this shoe. Deliver every section separately and also stitch the accepted sections into one long-page preview."
          },
          {
            "title": "Adapt one asset set to two destinations",
            "prompt": "Use these verified product assets to prepare one Shopify product-page image set and one marketplace long-detail version without inventing claims."
          }
        ]
      },
      "output": {
        "Media type": "An ordered product-detail module image set, manifest, research record, and optional stitched long-page image",
        "Default quantity": "6–10 separate modules when evidence supports them; otherwise the minimum complete set",
        "Content per image": "One buyer question, one verified message, and one purposeful visual job",
        "Default layout": "Researched platform-native modules; separate modules remain canonical even when a long page is delivered",
        "Video output": "No; record video opportunities separately without creating them",
        "Model policy": "Call the narrowest installed product/layout Atom or current reference-aware image model, then use deterministic typography and assembly",
        "Downstream use": "Amazon A+ content, marketplace detail images, Shopify/DTC product sections, seller review, localization, and campaign adaptation"
      },
      "similarSkills": [
        {
          "id": "ai-banner-design",
          "displayName": "AI Banner Design",
          "difference": "AI Banner Design: Research and design channel-ready commercial banners. In contrast, Product Detail Page: Build modular ecommerce detail-page image sets."
        },
        {
          "id": "make-thumbnail",
          "displayName": "Make Thumbnail",
          "difference": "Make Thumbnail: Create a platform-aware cover or thumbnail. In contrast, Product Detail Page: Build modular ecommerce detail-page image sets."
        },
        {
          "id": "poster-design",
          "displayName": "Poster Design",
          "difference": "Poster Design: Create distinctive posters across varied art directions. In contrast, Product Detail Page: Build modular ecommerce detail-page image sets."
        }
      ]
    },
    {
      "id": "product-launch-video",
      "displayName": "Product Launch Video",
      "description": "Product launch-film plan with hook, reveal, and end-card arc.",
      "category": "Media workflows",
      "categoryTags": [
        "media-workflows"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Agent-authored structured brief",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Freezes the request, approved facts, source assets, constraints, and acceptance checks.",
        "Produces one structured brief for: product launch-film plan with hook, reveal, and end-card arc.",
        "Preserves user-approved facts and assets; flags unknowns rather than inventing them."
      ],
      "howToUse": {
        "summary": "Provide the desired outcome, source material, audience, format, fixed facts/assets, and any must-not-change constraints. This Skill plans and validates; it does not claim an unverified provider execution route.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a product launch-film plan with hook, reveal, and end-card arc from my approved source material. Preserve the named facts and clearly identify every assumption."
          }
        ]
      },
      "output": {
        "Media type": "Structured planning brief",
        "Default quantity": "One brief",
        "Content per artifact": "Objective, inputs, fixed facts, constraints, output structure, risks, and acceptance checks",
        "Default layout": "Validated Markdown",
        "Model policy": "Agent-authored planning; no paid media generation or unverified provider call",
        "Downstream use": "$make-video-intro or another verified Atom selected by Router intent matching"
      },
      "similarSkills": [
        {
          "id": "make-product-commercial",
          "displayName": "Make Product Commercial",
          "difference": "Make Product Commercial: Produce one truthful, continuity-safe short commercial in which the supplied product drives the action. In contrast, Product Launch Video: Product launch-film plan with hook, reveal, and end-card arc."
        },
        {
          "id": "minimalist-product-ad-generator",
          "displayName": "Minimalist Product Ad Generator",
          "difference": "Minimalist Product Ad Generator: Produce a sparse, product-faithful commercial with approved copy and beat-level continuity. In contrast, Product Launch Video: Product launch-film plan with hook, reveal, and end-card arc."
        }
      ]
    },
    {
      "id": "product-packaging",
      "displayName": "Product Packaging",
      "description": "Turn product references into a structured packaging concept board.",
      "category": "Commercial image",
      "categoryTags": [
        "commercial-image"
      ],
      "coverImage": "/skill-covers/product-packaging.png",
      "routeLabel": "Model-routed packaging concept",
      "tone": "lilac",
      "featured": false,
      "whatThisSkillDoes": [
        "Maps product, logo, color, structure, and style references to explicit roles before generation.",
        "Starts from the cleaned WeShop Product Packaging default Prompt and compiles only the supplied product facts.",
        "Routes the best current image model for layout, reference following, and text handling instead of depending on a temporary tool endpoint.",
        "Produces one presentation board and rejects invented specifications, regulatory copy, or claims that look production-approved."
      ],
      "howToUse": {
        "summary": "Attach the product and any logo, brand, color, or packaging references, then describe the packaging direction in one sentence.",
        "promptExamples": [
          {
            "title": "Create a packaging concept",
            "prompt": "Create a clean packaging concept board for this serum using its amber-and-ivory color palette."
          },
          {
            "title": "Use brand references",
            "prompt": "Use these product and brand references to create a gentle, minimal packaging concept with front, back, structure, palette, and material views."
          }
        ]
      },
      "output": {
        "Media type": "One product-packaging concept board and a compact acceptance record",
        "Default quantity": "1 separate image",
        "Content per image": "One coherent packaging direction with conceptual front, back, dieline, structure, palette, and material views",
        "Default layout": "3:4 presentation board with ample white space",
        "Video output": "No",
        "Model policy": "Route the best current layout- and reference-capable image model; specialized packaging endpoints are optional",
        "Downstream use": "Packaging exploration, design reviews, brand direction, and briefing a packaging designer"
      },
      "similarSkills": [
        {
          "id": "ai-product",
          "displayName": "AI Product",
          "difference": "AI Product: Place a real product into a new commercial scene. In contrast, Product Packaging: Turn product references into a structured packaging concept board."
        },
        {
          "id": "create-white-background-product-mockup",
          "displayName": "White Background Product Mockup",
          "difference": "White Background Product Mockup: Create product, flat-lay, and ghost-mannequin mockups without identity drift. In contrast, Product Packaging: Turn product references into a structured packaging concept board."
        }
      ]
    },
    {
      "id": "professional-headshot",
      "displayName": "Professional Headshot",
      "description": "Research the channel, then create a properly posed and lit professional portrait.",
      "category": "Portrait production",
      "categoryTags": [
        "portrait-production"
      ],
      "coverImage": "/skill-covers/professional-headshot.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "rose",
      "featured": false,
      "whatThisSkillDoes": [
        "Produces one professional portrait for one channel, role, market, and brand tone.",
        "Researches background, seated/standing pose, shoulders, expression, lighting, crop, safe area, and file rules before generation.",
        "Preserves recognizable identity, age, skin texture, hair, eye color, and distinguishing features."
      ],
      "howToUse": {
        "summary": "Provide one clear portrait plus the profession, channel, market, brand tone, and seated/standing preference.",
        "promptExamples": [
          {
            "title": "Create a seated LinkedIn portrait",
            "prompt": "Create a seated LinkedIn headshot for a product designer. Research the current channel and portrait conventions before choosing the background, posture, light, and crop."
          }
        ]
      },
      "output": {
        "Media type": "One researched professional portrait plus a compact requirement record",
        "Default quantity": "1",
        "Content per image": "One person in one channel-appropriate seated, standing, or crop-only setup",
        "Default layout": "Research-derived crop and safe area; no collage",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "LinkedIn, team pages, company directories, bios, resumes, and press kits"
      },
      "similarSkills": [
        {
          "id": "id-photo-format",
          "displayName": "ID Photo Format",
          "difference": "ID Photo Format: Research the authority, correct the capture, then crop around the measured head. In contrast, Professional Headshot: Research the channel, then create a properly posed and lit professional portrait."
        },
        {
          "id": "make-wallet-photo",
          "displayName": "Make Wallet Photo",
          "difference": "Make Wallet Photo: Prepare one wallet-size print portrait from an authorized photo using a real print dimension, crop and bleed specification. In contrast, Professional Headshot: Research the channel, then create a properly posed and lit professional portrait."
        }
      ]
    },
    {
      "id": "recolor-object",
      "displayName": "Recolor Object",
      "description": "Recolor one object without tinting the whole image.",
      "category": "Social and layout",
      "categoryTags": [
        "social-and-layout"
      ],
      "coverImage": "/skill-covers/recolor-object.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "violet",
      "featured": false,
      "whatThisSkillDoes": [
        "Identifies one target region and changes hue/chroma without flattening material.",
        "Keeps untargeted objects, people, background, lighting, and geometry unchanged."
      ],
      "howToUse": {
        "summary": "Provide image, target object, and color name, swatch, RGB, or hex. #### Recolor one product ```text Change only the yellow chair to #174A36; preserve grain, highlights, and shadow. ``` ## Workflow 1. Bind target by object, location, and optional mask; define trim, logo, hardware, and reflection scope. 2. Preserve the original luminance structure and material response. 3. Run `gpt-image` v1.0 with `quality: \"medium\"`, `imageSize: \"2K\"`, the supplied references, the requested or source-preserving ratio, `batchCount: 1`, and one result. 4. Forbid global grade, material replacement, geometry drift, or background edits. 5. Compare coverage, edge halos, texture, highlights, shadows, and neutral regions.",
        "promptExamples": [
          {
            "title": "Recolor one product",
            "prompt": "Change only the yellow chair to #174A36; preserve grain, highlights, and shadow."
          }
        ]
      },
      "output": {
        "Media type": "One locally recolored image",
        "Default quantity": "1",
        "Content per image": "Original scene with one target recolored",
        "Default layout": "Source composition",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Product colorways and previews"
      },
      "similarSkills": [
        {
          "id": "apply-photo-filter",
          "displayName": "Apply Photo Filter",
          "difference": "Apply Photo Filter: Apply one filter without changing scene content. In contrast, Recolor Object: Recolor one object without tinting the whole image."
        },
        {
          "id": "remove-photo-filter",
          "displayName": "Remove Photo Filter",
          "difference": "Remove Photo Filter: Remove an artificial grade and restore a natural look. In contrast, Recolor Object: Recolor one object without tinting the whole image."
        }
      ]
    },
    {
      "id": "recreate-social-photo",
      "displayName": "Recreate Social Photo",
      "description": "Turn an everyday photo into a reference-led social photo.",
      "category": "Social and layout",
      "categoryTags": [
        "social-and-layout"
      ],
      "coverImage": "/skill-covers/recreate-social-photo.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "rose",
      "featured": false,
      "whatThisSkillDoes": [
        "Maps source identity and reference visual grammar separately.",
        "Recreates framing, pose energy, lens feel, light, grade, texture, and mood without copying reference identity."
      ],
      "howToUse": {
        "summary": "Provide one authorized person photo and one visual reference; state protected traits. #### Recreate a social photo ```text Use my portrait as the person and image 2 only for composition, light, color, and mood. ``` ## Workflow 1. Label identity source and visual reference; never swap roles. 2. Inspect crop, viewpoint, subject scale, gesture, light direction, palette, contrast, grain, and background rhythm. 3. Run `gpt-image` v1.0 with `quality: \"medium\"`, `imageSize: \"2K\"`, the supplied references, the requested or source-preserving ratio, `batchCount: 1`, and one result. 4. Preserve identity; reproduce visual grammar rather than the reference face, logos, or text. 5. Reject identity drift, generic studio posing, filter-only output, collage, duplicates, or copied text.",
        "promptExamples": [
          {
            "title": "Recreate a social photo",
            "prompt": "Use my portrait as the person and image 2 only for composition, light, color, and mood."
          }
        ]
      },
      "output": {
        "Media type": "One recreated social photograph",
        "Default quantity": "1",
        "Content per image": "One coherent social-photo frame",
        "Default layout": "Single image; no collage",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Personal and brand social posts"
      }
    },
    {
      "id": "remove-background",
      "displayName": "Remove Background",
      "description": "Create a clean transparent PNG cutout.",
      "category": "Image utility",
      "categoryTags": [
        "image-utility"
      ],
      "coverImage": "/skill-covers/remove-background.png",
      "routeLabel": "WeShop RemoveBG with alpha-edge QA",
      "tone": "mint",
      "featured": true,
      "whatThisSkillDoes": [
        "Removes one image background with a dedicated segmentation endpoint.",
        "Returns a PNG containing a real alpha channel by default.",
        "Preserves foreground pixels, count, internal openings, fine edges, and original dimensions.",
        "Checks the cutout on black, white, and checkerboard backgrounds to expose dirty mask edges.",
        "Uses a supplied custom mask only when automatic subject segmentation fails."
      ],
      "howToUse": {
        "summary": "Provide one image and say what must remain.",
        "promptExamples": [
          {
            "title": "Isolate a product",
            "prompt": "Remove the background and return this bag as a transparent PNG."
          },
          {
            "title": "Keep one selected subject",
            "prompt": "Cut out only the chair on the right and keep its complete legs and openings."
          },
          {
            "title": "Prepare a compositing asset",
            "prompt": "Make this person a transparent cutout with clean hair edges."
          }
        ]
      },
      "output": {
        "Media type": "One lossless transparent PNG",
        "Default quantity": "1 separate image",
        "Default route": "`removeBG` v1.0 automatic subject segmentation with the live `Transparent` preset",
        "Required verification": "Alpha-channel inspection plus black, white, and checkerboard edge previews",
        "Optional output": "One additional solid-color composite when explicitly requested",
        "Downstream use": "Product compositing, posters, banners, collages, packaging layouts, and scene placement"
      }
    },
    {
      "id": "remove-glasses",
      "displayName": "Remove Glasses",
      "description": "Remove glasses and naturally restore the eye area.",
      "category": "Image repair",
      "categoryTags": [
        "image-repair"
      ],
      "coverImage": "/skill-covers/remove-glasses.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Removes frames, lenses, nose pads, temple arms, glare, lens tint, refraction, and frame shadows.",
        "Reconstructs occluded face regions without changing identity or expression."
      ],
      "howToUse": {
        "summary": "Provide one authorized portrait with visible glasses and state any eye traits that must remain. #### Remove eyeglasses ```text Remove the eyeglasses, lens glare, and frame shadows; preserve gaze, eye color, expression, and identity. ``` ## Workflow 1. Inspect frame path, lens distortion, glare, shadow, occluded brows, nose bridge, temples, and hair. 2. Run `gpt-image` v1.0 with `quality: \"medium\"`, `imageSize: \"2K\"`, the supplied references, the requested or source-preserving ratio, `batchCount: 1`, and one result. 3. Request face-aware reconstruction; forbid eye enlargement, makeup, skin smoothing, face reshaping, or expression changes. 4. Compare eye spacing, gaze, iris color, eyelids, brows, bridge, temples, ears, hair, and facial symmetry. 5. Reject frame remnants, phantom glare, mismatched eyes, invented eyelashes, skin seams, or identity drift.",
        "promptExamples": [
          {
            "title": "Remove eyeglasses",
            "prompt": "Remove the eyeglasses, lens glare, and frame shadows; preserve gaze, eye color, expression, and identity."
          }
        ]
      },
      "output": {
        "Media type": "One glasses-free portrait",
        "Default quantity": "1",
        "Content per image": "Same person without eyewear",
        "Default layout": "Source composition",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Portrait and profile-photo repair"
      }
    },
    {
      "id": "remove-image-mark",
      "displayName": "Remove Image Mark",
      "description": "Remove an ordinary visible mark and rebuild the covered image.",
      "category": "Image repair",
      "categoryTags": [
        "image-repair"
      ],
      "coverImage": "/skill-covers/remove-image-mark.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "red",
      "featured": false,
      "whatThisSkillDoes": [
        "Removes named overlay text, logos, stamps, dates, or annotations by understanding their visual context.",
        "Reconstructs covered background while leaving unrelated pixels and composition stable."
      ],
      "howToUse": {
        "summary": "Provide image and identify each mark and location; explain context if it could be a safety, provenance, or evidence marker. #### Remove a review annotation ```text Remove the red review circle and arrow around the lamp, keep the lamp, and reconstruct only the covered pixels. ``` ## Workflow 1. Identify mark text, shape, opacity, location, overlap, and protected nearby content. 2. Refuse safety warnings, provenance/authenticity labels, evidence markings, or deceptive-origin requests; otherwise continue without a legacy CV pipeline. 3. Run `gpt-image` v1.0 with `quality: \"medium\"`, `imageSize: \"2K\"`, the supplied references, the requested or source-preserving ratio, `batchCount: 1`, and one result. 4. Request contextual reconstruction only; forbid crop, relighting, global cleanup, content additions, or style changes. 5. Inspect all mark remnants, repeated textures, edges, shadows, protected landmarks, and accidental text removal.",
        "promptExamples": [
          {
            "title": "Remove a review annotation",
            "prompt": "Remove the red review circle and arrow around the lamp, keep the lamp, and reconstruct only the covered pixels."
          }
        ]
      },
      "output": {
        "Media type": "One cleaned image",
        "Default quantity": "1",
        "Content per image": "Same image without the approved mark",
        "Default layout": "Source composition",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Ordinary photo and asset cleanup"
      }
    },
    {
      "id": "remove-object",
      "displayName": "Remove Object",
      "description": "Remove one object and naturally rebuild what was behind it.",
      "category": "Image repair",
      "categoryTags": [
        "image-repair"
      ],
      "coverImage": "/skill-covers/remove-object.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "red",
      "featured": false,
      "whatThisSkillDoes": [
        "Lets the image model identify one target from language and infer the hidden background in context.",
        "Keeps crop, perspective, lighting, texture, people, and unrelated objects stable."
      ],
      "howToUse": {
        "summary": "Provide image and identify the target by type, position, color, and relation to nearby objects. #### Remove one distraction ```text Remove only the red trash bin at lower right and reconstruct the pavement and wall behind it. ``` ## Workflow 1. Bind one removal target unambiguously and list all protected neighboring content. 2. Describe the expected continuation behind it from visible scene cues, without inventing a new focal object. 3. Run `gpt-image` v1.0 with `quality: \"medium\"`, `imageSize: \"2K\"`, the supplied references, the requested or source-preserving ratio, `batchCount: 1`, and one result. 4. Ask for one contextual edit; forbid crop, relighting, global cleanup, extra people, or unrelated changes. 5. Inspect target absence, boundary residue, repeated texture, geometry, shadows, and protected landmarks; retry the failed region only.",
        "promptExamples": [
          {
            "title": "Remove one distraction",
            "prompt": "Remove only the red trash bin at lower right and reconstruct the pavement and wall behind it."
          }
        ]
      },
      "output": {
        "Media type": "One repaired image",
        "Default quantity": "1",
        "Content per image": "Source scene with one target removed",
        "Default layout": "Source composition",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Photo cleanup and commercial retouching"
      },
      "similarSkills": [
        {
          "id": "clean-room",
          "displayName": "Clean Room",
          "difference": "Clean Room: Remove room clutter without redesigning the space. In contrast, Remove Object: Remove one object and naturally rebuild what was behind it."
        },
        {
          "id": "restyle-room",
          "displayName": "Restyle Room",
          "difference": "Restyle Room: Restyle a supplied room while preserving architecture, layout constraints and declared keep-items. In contrast, Remove Object: Remove one object and naturally rebuild what was behind it."
        }
      ]
    },
    {
      "id": "remove-photo-filter",
      "displayName": "Remove Photo Filter",
      "description": "Remove an artificial grade and restore a natural look.",
      "category": "Image repair",
      "categoryTags": [
        "image-repair"
      ],
      "coverImage": "/skill-covers/remove-photo-filter.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "sky",
      "featured": false,
      "whatThisSkillDoes": [
        "Identifies visible filter symptoms and asks the image model to neutralize them coherently.",
        "Preserves people, geometry, objects, text, crop, and genuine scene lighting."
      ],
      "howToUse": {
        "summary": "Provide filtered image, known original references if available, and desired natural-light target. #### Remove a heavy filter ```text Remove the strong orange-teal grade, crushed blacks, vignette, and added grain; restore plausible daylight color. ``` ## Workflow 1. Describe filter symptoms: cast, curve, saturation, clipping, grain, bloom, vignette, and beauty effects. 2. Record any known neutral references; state that unrecoverable hidden colors are inferred. 3. Run `gpt-image` v1.0 with `quality: \"medium\"`, `imageSize: \"2K\"`, the supplied references, the requested or source-preserving ratio, `batchCount: 1`, and one result. 4. Forbid content, face, texture, crop, pose, background, and lighting-direction changes. 5. Inspect neutrals, skin, highlights, shadows, banding, residual cast, texture, and content stability.",
        "promptExamples": [
          {
            "title": "Remove a heavy filter",
            "prompt": "Remove the strong orange-teal grade, crushed blacks, vignette, and added grain; restore plausible daylight color."
          }
        ]
      },
      "output": {
        "Media type": "One naturalized photograph",
        "Default quantity": "1",
        "Content per image": "Same source with filter symptoms reduced",
        "Default layout": "Source composition",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Photo correction and asset normalization"
      },
      "similarSkills": [
        {
          "id": "apply-photo-filter",
          "displayName": "Apply Photo Filter",
          "difference": "Apply Photo Filter: Apply one filter without changing scene content. In contrast, Remove Photo Filter: Remove an artificial grade and restore a natural look."
        },
        {
          "id": "recolor-object",
          "displayName": "Recolor Object",
          "difference": "Recolor Object: Recolor one object without tinting the whole image. In contrast, Remove Photo Filter: Remove an artificial grade and restore a natural look."
        }
      ]
    },
    {
      "id": "remove-video-mark",
      "displayName": "Remove Video Mark",
      "description": "Remove an ordinary user-authorized overlay or annotation while preserving motion and reconstructing the covered region consistently.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/remove-video-mark.png",
      "routeLabel": "WeShop authorized video mark removal",
      "tone": "slate",
      "featured": false,
      "whatThisSkillDoes": [
        "Removes a specified mark only when the user is authorized to edit it.",
        "Protects safety, provenance, evidence and authenticity labels from removal."
      ],
      "howToUse": {
        "summary": "Provide authorized video, mark location and timing, ownership context and protected content.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Remove my red review arrow from 00:01–00:04; keep product and other overlays; rebuild background consistently."
          }
        ]
      },
      "output": {
        "Media type": "One MP4 video",
        "Default quantity": "1",
        "Content per video": "The authorized source without the approved mark",
        "Default layout": "User-requested delivery format",
        "Model policy": "WeShop authorized video mark removal",
        "Downstream use": "Authorized asset cleanup"
      }
    },
    {
      "id": "render-comic-page",
      "displayName": "Render Comic Page",
      "description": "Render one storyboarded comic page with character, style, panel, and dialogue continuity.",
      "category": "Narrative and comics",
      "categoryTags": [
        "narrative-and-comics"
      ],
      "coverImage": "/skill-covers/render-comic-page.png",
      "routeLabel": "GPT Image 2 reference-aware comic page",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Converts one approved page manifest into one intentional multi-panel comic page.",
        "Binds named characters to canonical reference images and carries observable continuity from adjacent pages.",
        "Keeps exact dialogue separate enough to repair typography without discarding accepted artwork."
      ],
      "howToUse": {
        "summary": "Provide one storyboard page, page ratio, reading direction, visual-style prompt, exact dialogue, canonical character references, and any previous-page continuity reference.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Render page 3 from this approved storyboard as a 3:4 Chinese webcomic page. Use the attached Lin and Momo sheets as canonical identity references, keep the red parcel in Lin's left hand, and render the three exact dialogue lines in reading order."
          }
        ]
      },
      "output": {
        "Media type": "One finished comic-page image plus execution receipt",
        "Default quantity": "1",
        "Content per image": "One page containing the approved ordered panels and dialogue",
        "Default layout": "Storyboard-defined page ratio and reading direction",
        "Model policy": "GPT Image 2 Medium/2K with canonical character references",
        "Downstream use": "Multipage comic assembly, targeted page revision, translation, or deterministic bubble repair"
      },
      "similarSkills": [
        {
          "id": "develop-story",
          "displayName": "Develop Story",
          "difference": "Develop Story: Build or repair a story foundation before medium-specific production. In contrast, Render Comic Page: Render one storyboarded comic page with character, style, panel, and dialogue continuity."
        },
        {
          "id": "plan-comic-storyboard",
          "displayName": "Plan Comic Storyboard",
          "difference": "Plan Comic Storyboard: Convert a story into a validated page-by-page comic production manifest. In contrast, Render Comic Page: Render one storyboarded comic page with character, style, panel, and dialogue continuity."
        },
        {
          "id": "plan-film-storyboard",
          "displayName": "Plan Film Storyboard",
          "difference": "Plan Film Storyboard: Turn narrative material into timed atomic film shots with continuity and generation handoffs. In contrast, Render Comic Page: Render one storyboarded comic page with character, style, panel, and dialogue continuity."
        }
      ]
    },
    {
      "id": "restyle-room",
      "displayName": "Restyle Room",
      "description": "Restyle a supplied room while preserving architecture, layout constraints and declared keep-items.",
      "category": "Space and diagrams",
      "categoryTags": [
        "space-and-diagrams"
      ],
      "coverImage": "/skill-covers/restyle-room.png",
      "routeLabel": "GPT Image 2 room restyling",
      "tone": "orange",
      "featured": false,
      "whatThisSkillDoes": [
        "Changes interior style, palette, soft goods and movable furnishings around a real room.",
        "Protects doors, windows, walls, camera geometry and user-declared furniture."
      ],
      "howToUse": {
        "summary": "Provide one room photo, target style, keep-items, allowed replacements, budget level and functional needs.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Restyle this living room as warm Japandi; keep windows, oak floor, sofa and camera view; replace only rug, lighting and decor."
          }
        ]
      },
      "output": {
        "Media type": "One room preview",
        "Default quantity": "1",
        "Content per image": "The same room with one coherent restyle",
        "Default layout": "Source-preserving or dimension-defined format",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive source-image editing",
        "Downstream use": "Interior planning previews"
      },
      "similarSkills": [
        {
          "id": "clean-room",
          "displayName": "Clean Room",
          "difference": "Clean Room: Remove room clutter without redesigning the space. In contrast, Restyle Room: Restyle a supplied room while preserving architecture, layout constraints and declared keep-items."
        },
        {
          "id": "remove-object",
          "displayName": "Remove Object",
          "difference": "Remove Object: Remove one object and naturally rebuild what was behind it. In contrast, Restyle Room: Restyle a supplied room while preserving architecture, layout constraints and declared keep-items."
        }
      ]
    },
    {
      "id": "restyle-video",
      "displayName": "Restyle Video",
      "description": "Transform the visual treatment of a supplied video while retaining timing, motion, subjects and continuity.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/restyle-video.png",
      "routeLabel": "MiniMax H3 source-video restyling",
      "tone": "violet",
      "featured": false,
      "whatThisSkillDoes": [
        "Applies one declared style across moving footage rather than a static color filter.",
        "Uses source video as motion truth and protects shot timing and identity."
      ],
      "howToUse": {
        "summary": "Provide a video, one target style, preservation priorities, protected text or logos and ratio.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Restyle this authorized street clip as hand-painted gouache; preserve every cut, person, motion path and camera move."
          }
        ]
      },
      "output": {
        "Media type": "One MP4 video",
        "Default quantity": "1",
        "Content per video": "The source video in one stable visual style",
        "Default layout": "User-requested delivery format",
        "Model policy": "MiniMax H3 for source-video editing; stop if its current adapter cannot accept the required source instead of inventing another model capability",
        "Downstream use": "Creative video transformations"
      },
      "similarSkills": [
        {
          "id": "add-video-effect",
          "displayName": "Add Video Effect",
          "difference": "Add Video Effect: Add one specified effect to a supplied video at a defined time and region while preserving underlying footage. In contrast, Restyle Video: Transform the visual treatment of a supplied video while retaining timing, motion, subjects and continuity."
        },
        {
          "id": "correct-video-color",
          "displayName": "Correct Video Color",
          "difference": "Correct Video Color: Correct white balance, exposure and shot-to-shot consistency without changing content or creative look. In contrast, Restyle Video: Transform the visual treatment of a supplied video while retaining timing, motion, subjects and continuity."
        },
        {
          "id": "upscale-video",
          "displayName": "Upscale Video",
          "difference": "Upscale Video: Increase supplied video resolution and clarity while preserving timing, content, grain intent and natural detail. In contrast, Restyle Video: Transform the visual treatment of a supplied video while retaining timing, motion, subjects and continuity."
        }
      ]
    },
    {
      "id": "retouch-blemish",
      "displayName": "Retouch Blemish",
      "description": "Remove temporary blemishes without plastic-looking skin.",
      "category": "Image repair",
      "categoryTags": [
        "image-repair"
      ],
      "coverImage": "/skill-covers/retouch-blemish.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "rose",
      "featured": false,
      "whatThisSkillDoes": [
        "Removes only specified temporary spots, redness, or small imperfections.",
        "Preserves identity, pores, natural tonal variation, freckles, moles, and age unless explicitly targeted."
      ],
      "howToUse": {
        "summary": "Provide an authorized portrait and specify which temporary blemishes to remove and which marks to keep. #### Retouch one portrait ```text Remove the temporary forehead and chin blemishes; keep freckles, pores, mole, face shape, and lighting. ``` ## Workflow 1. Separate temporary targets from protected permanent traits; do not infer that every mark is unwanted. 2. Run `gpt-image` v1.0 with `quality: \"medium\"`, `imageSize: \"2K\"`, the supplied references, the requested or source-preserving ratio, `batchCount: 1`, and one result. 3. Request localized healing with source-consistent texture and lighting; forbid smoothing, makeup, reshaping, whitening, or age change. 4. Compare eyes, nose, mouth, jaw, freckles, moles, pores, hair, background, and light direction. 5. Reject waxy skin, erased texture, face drift, broad color changes, or removal of protected marks.",
        "promptExamples": [
          {
            "title": "Retouch one portrait",
            "prompt": "Remove the temporary forehead and chin blemishes; keep freckles, pores, mole, face shape, and lighting."
          }
        ]
      },
      "output": {
        "Media type": "One retouched portrait",
        "Default quantity": "1",
        "Content per image": "Same person with specified blemishes removed",
        "Default layout": "Source composition",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Portrait and profile-photo cleanup"
      },
      "similarSkills": [
        {
          "id": "apply-makeup",
          "displayName": "Apply Makeup",
          "difference": "Apply Makeup: Preview one makeup look without replacing or reshaping the face. In contrast, Retouch Blemish: Remove temporary blemishes without plastic-looking skin."
        },
        {
          "id": "smooth-wrinkles",
          "displayName": "Smooth Wrinkles",
          "difference": "Smooth Wrinkles: Reduce chosen skin or clothing wrinkles without flattening structure. In contrast, Retouch Blemish: Remove temporary blemishes without plastic-looking skin."
        }
      ]
    },
    {
      "id": "shave-head",
      "displayName": "Shave Head",
      "description": "Preview a natural bald or shaved-head appearance.",
      "category": "Person appearance",
      "categoryTags": [
        "person-appearance"
      ],
      "coverImage": "/skill-covers/shave-head.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "rose",
      "featured": false,
      "whatThisSkillDoes": [
        "Produces one bald or shaved-head portrait.",
        "Reconstructs scalp, ears, neck, and background naturally.",
        "Preserves identity, head proportions, facial hair, age, skin, clothing, and scene."
      ],
      "howToUse": {
        "summary": "Provide one clear portrait and specify clean bald, stubble, or buzz length.",
        "promptExamples": [
          {
            "title": "Preview a clean shaved head",
            "prompt": "Show this person with a clean naturally shaved scalp while keeping their beard unchanged."
          }
        ]
      },
      "output": {
        "Media type": "One edited portrait image",
        "Default quantity": "1",
        "Content per image": "One person with one scalp treatment",
        "Default layout": "Preserve source composition; no collage",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Grooming consultation and personal preview"
      },
      "similarSkills": [
        {
          "id": "change-bangs",
          "displayName": "Change Bangs",
          "difference": "Change Bangs: Preview one fringe style without replacing the full haircut. In contrast, Shave Head: Preview a natural bald or shaved-head appearance."
        },
        {
          "id": "hairstyle-change",
          "displayName": "Hairstyle Change",
          "difference": "Hairstyle Change: Preview one different hairstyle without changing identity. In contrast, Shave Head: Preview a natural bald or shaved-head appearance."
        },
        {
          "id": "hair-color-change",
          "displayName": "Hair Color Change",
          "difference": "Hair Color Change: Preview one new hair color without changing the person or cut. In contrast, Shave Head: Preview a natural bald or shaved-head appearance."
        }
      ]
    },
    {
      "id": "short-audiovisual-prompt",
      "displayName": "Short Audiovisual Prompt",
      "description": "Compact single-shot audiovisual video prompt.",
      "category": "Media workflows",
      "categoryTags": [
        "media-workflows"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Agent-authored structured brief",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Freezes the request, approved facts, source assets, constraints, and acceptance checks.",
        "Produces one structured brief for: compact single-shot audiovisual video prompt.",
        "Preserves user-approved facts and assets; flags unknowns rather than inventing them."
      ],
      "howToUse": {
        "summary": "Provide the desired outcome, source material, audience, format, fixed facts/assets, and any must-not-change constraints. This Skill plans and validates; it does not claim an unverified provider execution route.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a compact single-shot audiovisual video prompt from my approved source material. Preserve the named facts and clearly identify every assumption."
          }
        ]
      },
      "output": {
        "Media type": "Structured planning brief",
        "Default quantity": "One brief",
        "Content per artifact": "Objective, inputs, fixed facts, constraints, output structure, risks, and acceptance checks",
        "Default layout": "Validated Markdown",
        "Model policy": "Agent-authored planning; no paid media generation or unverified provider call",
        "Downstream use": "$generate-video or another verified Atom selected by Router intent matching"
      },
      "similarSkills": [
        {
          "id": "cinematic-video-prompt",
          "displayName": "Cinematic Video Prompt",
          "difference": "Cinematic Video Prompt: Cinematic or image-to-video motion prompt. In contrast, Short Audiovisual Prompt: Compact single-shot audiovisual video prompt."
        },
        {
          "id": "narrative-video-prompt",
          "displayName": "Narrative Video Prompt",
          "difference": "Narrative Video Prompt: Structured prompt for one narrative video shot. In contrast, Short Audiovisual Prompt: Compact single-shot audiovisual video prompt."
        },
        {
          "id": "cross-model-video-prompt-adapter",
          "displayName": "Cross-model Video Prompt Adapter",
          "difference": "Cross-model Video Prompt Adapter: Semantic adaptation of an existing video prompt. In contrast, Short Audiovisual Prompt: Compact single-shot audiovisual video prompt."
        }
      ]
    },
    {
      "id": "smooth-wrinkles",
      "displayName": "Smooth Wrinkles",
      "description": "Reduce chosen skin or clothing wrinkles without flattening structure.",
      "category": "Image repair",
      "categoryTags": [
        "image-repair"
      ],
      "coverImage": "/skill-covers/smooth-wrinkles.png",
      "routeLabel": "GPT Image 2 consistency-sensitive edit",
      "tone": "sand",
      "featured": false,
      "whatThisSkillDoes": [
        "Treats skin lines and fabric creases as different AI edits with different protected traits.",
        "Reduces distracting wrinkles while retaining realistic texture and form-defining folds."
      ],
      "howToUse": {
        "summary": "Provide image, target region, skin or garment type, and desired reduction strength. #### Smooth garment wrinkles ```text Reduce packing creases on the linen shirt body; keep seams, weave, collar structure, and natural elbow folds. ``` ## Workflow 1. Classify target as skin or garment and identify structural lines that must remain. 2. Run `gpt-image` v1.0 with `quality: \"medium\"`, `imageSize: \"2K\"`, the supplied references, the requested or source-preserving ratio, `batchCount: 1`, and one result. 3. For skin, preserve age and identity; for fabric, preserve weave, seams, drape, edges, and volume. 4. Forbid anatomy, silhouette, garment design, color, background, makeup, or relighting changes. 5. Reject plastic skin, iron-flat fabric, melted seams, lost texture, or unrelated edits.",
        "promptExamples": [
          {
            "title": "Smooth garment wrinkles",
            "prompt": "Reduce packing creases on the linen shirt body; keep seams, weave, collar structure, and natural elbow folds."
          }
        ]
      },
      "output": {
        "Media type": "One selectively smoothed image",
        "Default quantity": "1",
        "Content per image": "Same image with one wrinkle treatment",
        "Default layout": "Source composition",
        "Model policy": "GPT Image 2 Medium/2K for consistency-sensitive final image editing",
        "Downstream use": "Portrait and apparel retouching"
      },
      "similarSkills": [
        {
          "id": "apply-makeup",
          "displayName": "Apply Makeup",
          "difference": "Apply Makeup: Preview one makeup look without replacing or reshaping the face. In contrast, Smooth Wrinkles: Reduce chosen skin or clothing wrinkles without flattening structure."
        },
        {
          "id": "retouch-blemish",
          "displayName": "Retouch Blemish",
          "difference": "Retouch Blemish: Remove temporary blemishes without plastic-looking skin. In contrast, Smooth Wrinkles: Reduce chosen skin or clothing wrinkles without flattening structure."
        }
      ]
    },
    {
      "id": "social-knowledge-notes",
      "displayName": "Social Knowledge Notes",
      "description": "Fact-checked multi-page social knowledge-note plan.",
      "category": "Media workflows",
      "categoryTags": [
        "media-workflows"
      ],
      "coverImage": "/skill-covers/social-knowledge-notes.png",
      "routeLabel": "Agent-authored structured brief",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Freezes the request, approved facts, source assets, constraints, and acceptance checks.",
        "Produces one structured brief for: fact-checked multi-page social knowledge-note plan.",
        "Preserves user-approved facts and assets; flags unknowns rather than inventing them."
      ],
      "howToUse": {
        "summary": "Provide the desired outcome, source material, audience, format, fixed facts/assets, and any must-not-change constraints. This Skill plans and validates; it does not claim an unverified provider execution route.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a fact-checked multi-page social knowledge-note plan from my approved source material. Preserve the named facts and clearly identify every assumption."
          }
        ]
      },
      "output": {
        "Media type": "Structured planning brief",
        "Default quantity": "One brief",
        "Content per artifact": "Objective, inputs, fixed facts, constraints, output structure, risks, and acceptance checks",
        "Default layout": "Validated Markdown",
        "Model policy": "Agent-authored planning; no paid media generation or unverified provider call",
        "Downstream use": "$make-infographic or another verified Atom selected by Router intent matching"
      }
    },
    {
      "id": "suspense-title-sequence-generator",
      "displayName": "Suspense Title Sequence Generator",
      "description": "Produce a suspense pop-art film title sequence with exact supplied credits and graphic-motion QC.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Six-anchor graphic title composition",
      "tone": "purple",
      "featured": false,
      "whatThisSkillDoes": [
        "Locks title, credits, film cues, reference roles, and a six-keyframe structure before paid generation.",
        "Produces graphic keyframes as approved visual anchors, then animates a coherent title package around them.",
        "Keeps supplied English title/credit copy exact through deterministic finishing and checks every hold for readability."
      ],
      "howToUse": {
        "summary": "Provide film type, title, one-line logline, cast, only the credit roles/names that should appear, and authorized character/prop/scene/style references. State ratio, duration, language, and audio preference.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a 15-second 16:9 suspense title sequence for “GLASS SIGNAL.” Use the supplied cast and director credit only, six saturated red/yellow/blue graphic keyframes, vinyl and evidence-wall motifs, exact English credits, and no Chinese on-screen text."
          }
        ]
      },
      "output": {
        "Media type": "One final MP4 plus credit ledger, six keyframes, motion plan, and operation receipts",
        "Default quantity": "1 title sequence",
        "Content per video": "Six graphic suspense beats with exact supplied title and credits",
        "Default layout": "15 seconds and 16:9 by default; use requested ratio/duration when the approved route supports it",
        "Model policy": "Text-safe image route for anchors; current catalog video route for the approved motion plan; deterministic exact-copy finishing",
        "Downstream use": "Human title, credit, rights, creative, and publication review"
      }
    },
    {
      "id": "technical-visual-explainer",
      "displayName": "Technical Visual Explainer",
      "description": "Interactive self-contained HTML technical explanation.",
      "category": "Media workflows",
      "categoryTags": [
        "media-workflows"
      ],
      "coverImage": "/skill-covers/technical-visual-explainer.png",
      "routeLabel": "Agent-authored structured brief",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Freezes the request, approved facts, source assets, constraints, and acceptance checks.",
        "Produces one structured brief for: interactive self-contained html technical explanation.",
        "Preserves user-approved facts and assets; flags unknowns rather than inventing them."
      ],
      "howToUse": {
        "summary": "Provide the desired outcome, source material, audience, format, fixed facts/assets, and any must-not-change constraints. This Skill plans and validates; it does not claim an unverified provider execution route.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a interactive self-contained html technical explanation from my approved source material. Preserve the named facts and clearly identify every assumption."
          }
        ]
      },
      "output": {
        "Media type": "Structured planning brief",
        "Default quantity": "One brief",
        "Content per artifact": "Objective, inputs, fixed facts, constraints, output structure, risks, and acceptance checks",
        "Default layout": "Validated Markdown",
        "Model policy": "Agent-authored planning; no paid media generation or unverified provider call",
        "Downstream use": "$make-infographic or another verified Atom selected by Router intent matching"
      }
    },
    {
      "id": "testimonial-quote-video",
      "displayName": "Testimonial Quote Video",
      "description": "Attributed animated testimonial-video plan.",
      "category": "Media workflows",
      "categoryTags": [
        "media-workflows"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Agent-authored structured brief",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Freezes the request, approved facts, source assets, constraints, and acceptance checks.",
        "Produces one structured brief for: attributed animated testimonial-video plan.",
        "Preserves user-approved facts and assets; flags unknowns rather than inventing them."
      ],
      "howToUse": {
        "summary": "Provide the desired outcome, source material, audience, format, fixed facts/assets, and any must-not-change constraints. This Skill plans and validates; it does not claim an unverified provider execution route.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a attributed animated testimonial-video plan from my approved source material. Preserve the named facts and clearly identify every assumption."
          }
        ]
      },
      "output": {
        "Media type": "Structured planning brief",
        "Default quantity": "One brief",
        "Content per artifact": "Objective, inputs, fixed facts, constraints, output structure, risks, and acceptance checks",
        "Default layout": "Validated Markdown",
        "Model policy": "Agent-authored planning; no paid media generation or unverified provider call",
        "Downstream use": "$make-video-intro or another verified Atom selected by Router intent matching"
      }
    },
    {
      "id": "transcript-broll-plan",
      "displayName": "Transcript B-Roll Plan",
      "description": "Turn narration into a reviewable A-roll, evidence, and B-roll plan before generating approved shots.",
      "category": "Video",
      "categoryTags": [
        "video"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Transcript-led B-roll planning",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Segments transcripts by meaning and selects the simplest visual support.",
        "Flags exact claims, missing assets, and text that needs evidence or deterministic handling."
      ],
      "howToUse": {
        "summary": "Provide the transcript plus available footage, screenshots, charts, and ratio/style constraints. Canvas-capable Agents may save the approved plan there. #### Example ```text 把这段市场分析口播拆成 A-roll、数据证据和 B-roll 镜头，标出我还要提供哪些截图。 ``` ## Workflow 1. Segment semantic units and label A-roll, evidence, reuse, typography, or pure B-roll. 2. Produce an approval-gated shot plan; exact facts or copy never become invented imagery. 3. Submit only approved atomic visuals to `$generate-video` with one durable key each. 4. Check claim fidelity, asset roles, continuity, and no unwanted readable text.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "把这段市场分析口播拆成 A-roll、数据证据和 B-roll 镜头，标出我还要提供哪些截图。"
          }
        ]
      },
      "output": {
        "Media type": "Reviewable plan and requested MP4 shots",
        "Default quantity": "One plan per transcript",
        "Content per video": "One approved semantic beat",
        "Default layout": "User-requested ratio",
        "Model policy": "Current catalog-selected video route",
        "Downstream use": "Talking-head and knowledge editing"
      }
    },
    {
      "id": "translate-image-text",
      "displayName": "Translate Image Text",
      "description": "Translate image text and keep the original layout.",
      "category": "Social and layout",
      "categoryTags": [
        "social-and-layout"
      ],
      "coverImage": "/skill-covers/translate-image-text.png",
      "routeLabel": "GPT Image 2 native visual translation",
      "tone": "teal",
      "featured": false,
      "whatThisSkillDoes": [
        "Uses GPT Image 2 to understand text, context, layout, and style directly from the image.",
        "Replaces source text only after linguistic review, then checks every rendered block."
      ],
      "howToUse": {
        "summary": "Provide image, languages, locale, terminology, and protected text. #### Translate a poster ```text Translate all English copy to Simplified Chinese; keep layout and brand name. ``` ## Workflow 1. Let GPT Image 2 inspect the whole image natively; list each visible source block, its meaning, reading order, placement, and style in a translation review table without routing through OCR. 2. Translate in visual context; preserve names, numbers, units, legal meaning, and glossary. Freeze the reviewed source-to-target table. 3. Use `gpt-image` v1.0 at Medium to replace source text and typeset the approved translations in one image-aware edit. 4. Keep non-text imagery and protected terms unchanged; edit translation to fit rather than making illegible type. 5. Visually compare every rendered block against the reviewed table, checking characters, punctuation, numbers, omissions, overlaps, and reading order. When this Skill selects GPT Image 2, use `quality: \"medium\"` and `imageSize: \"2K\"` by default; change either only when the user explicitly requests another tier.",
        "promptExamples": [
          {
            "title": "Translate a poster",
            "prompt": "Translate all English copy to Simplified Chinese; keep layout and brand name."
          }
        ]
      },
      "output": {
        "Media type": "One translated image plus translation table",
        "Default quantity": "1",
        "Content per image": "Original visual with reviewed target text",
        "Default layout": "Source layout",
        "Model policy": "GPT Image 2 Medium with agent-led translation verification and revision",
        "Downstream use": "Localized marketing and information graphics"
      }
    },
    {
      "id": "upscale-video",
      "displayName": "Upscale Video",
      "description": "Increase supplied video resolution and clarity while preserving timing, content, grain intent and natural detail.",
      "category": "Video and audio",
      "categoryTags": [
        "video-and-audio"
      ],
      "coverImage": "/skill-covers/upscale-video.png",
      "routeLabel": "WeShop AI Video Enhancer",
      "tone": "green",
      "featured": false,
      "whatThisSkillDoes": [
        "Upscales one video to requested resolution with temporal consistency.",
        "Rejects invented facial, text or texture detail and separates upscale from restyling."
      ],
      "howToUse": {
        "summary": "Provide video, target resolution, priority regions, denoise and sharpening limits and codec.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Upscale this authorized 720p clip to 4K; mild denoise only; preserve faces, film grain and exact duration."
          }
        ]
      },
      "output": {
        "Media type": "One MP4 video",
        "Default quantity": "1",
        "Content per video": "The same video at the requested higher resolution",
        "Default layout": "User-requested delivery format",
        "Model policy": "WeShop AI Video Enhancer",
        "Downstream use": "Archival and delivery enhancement"
      },
      "similarSkills": [
        {
          "id": "add-video-effect",
          "displayName": "Add Video Effect",
          "difference": "Add Video Effect: Add one specified effect to a supplied video at a defined time and region while preserving underlying footage. In contrast, Upscale Video: Increase supplied video resolution and clarity while preserving timing, content, grain intent and natural detail."
        },
        {
          "id": "correct-video-color",
          "displayName": "Correct Video Color",
          "difference": "Correct Video Color: Correct white balance, exposure and shot-to-shot consistency without changing content or creative look. In contrast, Upscale Video: Increase supplied video resolution and clarity while preserving timing, content, grain intent and natural detail."
        },
        {
          "id": "restyle-video",
          "displayName": "Restyle Video",
          "difference": "Restyle Video: Transform the visual treatment of a supplied video while retaining timing, motion, subjects and continuity. In contrast, Upscale Video: Increase supplied video resolution and clarity while preserving timing, content, grain intent and natural detail."
        }
      ]
    },
    {
      "id": "video-model-advisor",
      "displayName": "Video Model Advisor",
      "description": "Evidence-bounded recommendation among verified video routes.",
      "category": "Media workflows",
      "categoryTags": [
        "media-workflows"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Agent-authored structured brief",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Freezes the request, approved facts, source assets, constraints, and acceptance checks.",
        "Produces one structured brief for: evidence-bounded recommendation among verified video routes.",
        "Preserves user-approved facts and assets; flags unknowns rather than inventing them."
      ],
      "howToUse": {
        "summary": "Provide the desired outcome, source material, audience, format, fixed facts/assets, and any must-not-change constraints. This Skill plans and validates; it does not claim an unverified provider execution route.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a evidence-bounded recommendation among verified video routes from my approved source material. Preserve the named facts and clearly identify every assumption."
          }
        ]
      },
      "output": {
        "Media type": "Structured planning brief",
        "Default quantity": "One brief",
        "Content per artifact": "Objective, inputs, fixed facts, constraints, output structure, risks, and acceptance checks",
        "Default layout": "Validated Markdown",
        "Model policy": "Agent-authored planning; no paid media generation or unverified provider call",
        "Downstream use": "$generate-video or another verified Atom selected by Router intent matching"
      }
    },
    {
      "id": "video-prompt-failure-diagnosis",
      "displayName": "Video Prompt Failure Diagnosis",
      "description": "Diagnosis and revised prompt after a known defective result.",
      "category": "Media workflows",
      "categoryTags": [
        "media-workflows"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Agent-authored structured brief",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Freezes the request, approved facts, source assets, constraints, and acceptance checks.",
        "Produces one structured brief for: diagnosis and revised prompt after a known defective result.",
        "Preserves user-approved facts and assets; flags unknowns rather than inventing them."
      ],
      "howToUse": {
        "summary": "Provide the desired outcome, source material, audience, format, fixed facts/assets, and any must-not-change constraints. This Skill plans and validates; it does not claim an unverified provider execution route.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create a diagnosis and revised prompt after a known defective result from my approved source material. Preserve the named facts and clearly identify every assumption."
          }
        ]
      },
      "output": {
        "Media type": "Structured planning brief",
        "Default quantity": "One brief",
        "Content per artifact": "Objective, inputs, fixed facts, constraints, output structure, risks, and acceptance checks",
        "Default layout": "Validated Markdown",
        "Model policy": "Agent-authored planning; no paid media generation or unverified provider call",
        "Downstream use": "$generate-video or another verified Atom selected by Router intent matching"
      }
    },
    {
      "id": "virtual-try-on",
      "displayName": "Virtual Try-On",
      "description": "Try on or replace a garment with fidelity checks.",
      "category": "Commercial production",
      "categoryTags": [
        "commercial-production"
      ],
      "coverImage": "/skill-covers/virtual-try-on.png",
      "routeLabel": "GPT Image 2 with capability-matched fallbacks",
      "tone": "violet",
      "featured": true,
      "whatThisSkillDoes": [
        "Supports scene-aware try-on and person-plus-garment clothes replacement.",
        "Preflights garment visibility, pose, occlusion, crop, source roles, and scene requirements.",
        "Starts with GPT Image 2 for best overall quality and uses another route only for a concrete capability, availability, speed, or cost reason.",
        "Checks garment fidelity, person continuity, dressing plausibility, anatomy, occlusion, scene, and composition before delivery."
      ],
      "howToUse": {
        "summary": "Attach one person and one garment image, or one garment image for a generated model. A location image is optional only for scene-aware try-on. State any details that must remain unchanged.",
        "promptExamples": [
          {
            "title": "Try a garment on a model",
            "prompt": "Put this navy jacket on the supplied model and keep the model, pose, and studio background unchanged."
          },
          {
            "title": "Create an on-model garment preview",
            "prompt": "Create one clean on-model preview of this dress using a suitable generated fashion model."
          },
          {
            "title": "Use a location reference",
            "prompt": "Put this coat on the supplied model and use the attached concrete gallery as the location."
          },
          {
            "title": "Replace worn clothing",
            "prompt": "Replace the model's current top with this supplied shirt and keep the person, pose, trousers, and background unchanged."
          }
        ]
      },
      "output": {
        "Media type": "One virtual try-on or clothes-change image plus a compact source and acceptance record",
        "Default quantity": "1 separate image",
        "Content per image": "One person wearing one supplied primary garment",
        "Default layout": "Preserve person framing when supplied; otherwise use a clean full-body or garment-appropriate crop",
        "Video output": "No",
        "Model policy": "Default to GPT Image 2; fall back by capability to `virtualtryon` or `ai-clothes-changer`; reserve `weshopFlash` for explicit speed/cost priority",
        "Downstream use": "Pose changes, model replacement, photoshoots, lookbooks, product pages, posters, banners, and photo collages"
      },
      "similarSkills": [
        {
          "id": "change-pose",
          "displayName": "Change Pose",
          "difference": "Change Pose: Change a person’s pose without changing their look. In contrast, Virtual Try-On: Try on or replace a garment with fidelity checks."
        },
        {
          "id": "fashion-model-replacement",
          "displayName": "Fashion Model Replacement",
          "difference": "Fashion Model Replacement: Replace a fashion model while keeping the outfit intact. In contrast, Virtual Try-On: Try on or replace a garment with fidelity checks."
        }
      ]
    },
    {
      "id": "visualize-floor-plan",
      "displayName": "Visualize Floor Plan",
      "description": "Turn a supplied floor plan or dimensioned brief into one readable visualization without changing topology.",
      "category": "Space and diagrams",
      "categoryTags": [
        "space-and-diagrams"
      ],
      "coverImage": "/skill-covers/visualize-floor-plan.png",
      "routeLabel": "GPT Image 2 plan visualization",
      "tone": "cyan",
      "featured": false,
      "whatThisSkillDoes": [
        "Transforms a plan into a cleaned, furnished or axonometric plan visualization.",
        "Preserves room adjacency, openings, circulation and supplied dimensions; it is not construction documentation."
      ],
      "howToUse": {
        "summary": "Provide a plan image or dimensioned brief, room names, openings, visualization type and required labels.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Create one clean furnished top-down plan from this sketch; preserve walls, doors and adjacency; label the five rooms exactly."
          }
        ]
      },
      "output": {
        "Media type": "One floor-plan visualization",
        "Default quantity": "1",
        "Content per image": "One topology-faithful plan view",
        "Default layout": "Source-preserving or dimension-defined format",
        "Model policy": "GPT Image 2 plan visualization",
        "Downstream use": "Early space planning"
      }
    },
    {
      "id": "weshop-router",
      "displayName": "WeShop Router",
      "description": "Select the best matching WeShop Skill for one clear operation or escalate a genuinely multi-step request.",
      "category": "Platform tooling",
      "categoryTags": [
        "platform-tooling"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Intent-aware Skill routing",
      "tone": "ink",
      "featured": false,
      "whatThisSkillDoes": [
        "Interprets the complete creative intent instead of keyword matching.",
        "Selects the highest-scoring appropriate Atom or escalates only when a multi-step plan is needed."
      ],
      "howToUse": {
        "summary": "Use this package-level router when the user needs the correct Skill selected from an open-ended WeShop request.",
        "promptExamples": [
          {
            "title": "Route a creative request",
            "prompt": "Route this request to the best available WeShop Skill: turn this product image into a clean commercial scene while preserving the exact product."
          }
        ]
      },
      "output": {
        "Media type": "Route decision",
        "Default quantity": "1 selected Skill or one escalation decision",
        "Content per image": "Not applicable",
        "Default layout": "Structured intent and routing record",
        "Model policy": "The selected Skill owns model choice",
        "Downstream use": "Starting point for creative execution"
      }
    },
    {
      "id": "write-short-drama-series",
      "displayName": "Write Short Drama Series",
      "description": "Turn a story into a validated short-drama bible, episode arc, continuity ledger, and scripts.",
      "category": "Narrative and comics",
      "categoryTags": [
        "narrative-and-comics"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Agent-authored serialized drama package",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Separates fixed source facts from adaptations and records every deliberate change.",
        "Designs an exact-count episode arc with escalating conflict, episode-level hooks, delayed payoffs, and a resolved ending.",
        "Writes shootable scripts against a locked series bible and updates continuity after each accepted episode."
      ],
      "howToUse": {
        "summary": "Provide the premise or source, target market and audience, language, genre, episode count, approximate episode duration, content rating, fixed characters/facts, ending preference, and whether you need the complete package or selected episodes.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Adapt this workplace revenge synopsis into a 20-episode vertical short drama in Chinese, about 90 seconds per episode. Preserve the sister relationship, place the major identity reveal around episode 12, and deliver the bible, outline, and scripts for episodes 1–3."
          }
        ]
      },
      "output": {
        "Media type": "Structured short-drama production text package",
        "Default quantity": "One bible, one exact-count episode outline, one continuity ledger, and only the requested scripts",
        "Content per artifact": "Source facts, adaptation decisions, characters, season arc, episode beats, scripts, and tracked continuity",
        "Default layout": "Validated Markdown or JSON with stable episode and scene identifiers",
        "Model policy": "Agent-authored planning and writing; no paid image or video generation",
        "Downstream use": "Casting/assets, film storyboarding, shot generation, editing, and human editorial review"
      }
    },
    {
      "id": "write-short-video-hooks",
      "displayName": "Write Short Video Hooks",
      "description": "Write three platform-native hooks that the content can honestly pay off.",
      "category": "Narrative and comics",
      "categoryTags": [
        "narrative-and-comics"
      ],
      "coverImage": "/skill-covers/default-skill.svg",
      "routeLabel": "Agent-authored hook variants",
      "tone": "blue",
      "featured": false,
      "whatThisSkillDoes": [
        "Extracts the real audience tension and promised payoff from a topic or script.",
        "Produces three non-duplicative hooks using different attention mechanisms.",
        "Recommends one lead variant while preserving factual truth and body alignment."
      ],
      "howToUse": {
        "summary": "Provide the topic or script, audience, platform, desired action, voice, factual constraints, and any banned claims.",
        "promptExamples": [
          {
            "title": "Example",
            "prompt": "Write three hooks for a 30-second LinkedIn video explaining why small teams should document failed experiments. Keep each under 12 words and avoid fearmongering."
          }
        ]
      },
      "output": {
        "Media type": "Structured text",
        "Default quantity": "3 hook variants plus one recommendation",
        "Content per variant": "Label, mechanism, hook, and best-use note",
        "Default layout": "Concise numbered Markdown",
        "Model policy": "Agent-authored; no paid media call",
        "Downstream use": "Short-form scripting and A/B creative testing"
      }
    }
  ]
}
