← SplitMetrics LyraCONTENT HISTORY

Update to SplitMetrics Lyra

Snapshot Oct 28, 2026 · 13:15 UTC · version 0.4.2

WHAT CHANGED

Product listing or positioning changed

Declared skills — Now says: [{"description":"Ad concept multiplier for mobile app video ads in Lyra. Takes a concept (a winning ad, a Lyra workflow, a finished video, or a concept name...

Observed in the public listing; claims come from the publisher.

Save SplitMetrics Lyra and check future changes in Following.

Up to 10 plugins free · no card required.

All fields and original values.

Declared skills

Before

Oct 27, 2026 · 01:04 UTC

[{"description":"Ad concept multiplier for mobile app video ads in Lyra. Takes a concept (a winning ad, a Lyra workflow, a finished video, or a concept name like \"Authority figure\") and makes new ads on it with new angles, in one of tw...

After

Oct 28, 2026 · 13:15 UTC

[{"description":"Ad concept multiplier for mobile app video ads in Lyra. Takes a concept (a winning ad, a Lyra workflow, a finished video, or a concept name like \"Authority figure\") and makes new ads on it with new angles, in one of tw...

Display name

Before

Oct 27, 2026 · 01:04 UTC

Lyra

After

Oct 28, 2026 · 13:15 UTC

SplitMetrics Lyra

Composer icon dark url

Before

Oct 27, 2026 · 01:04 UTC

https://files.openai.com/content?id=file_00000000f6a081f4a6af941a0fb50278

After

Oct 28, 2026 · 13:15 UTC

https://files.openai.com/content?id=file_0000000086988246be617b2c2b22b25a

Composer icon url

Before

Oct 27, 2026 · 01:04 UTC

https://files.openai.com/content?id=file_00000000a414821193ffb212721694fe

After

Oct 28, 2026 · 13:15 UTC

https://files.openai.com/content?id=file_000000005cd881f4a57ad61d3ec71058

Compare saved observations

Download comparison JSON
Full technical diff · 8 changed fields

changed /release/display_name

BEFORE
"Lyra"
AFTER
"SplitMetrics Lyra"

changed /release/id

BEFORE
"pluginrel_1a1659f021f8819186f635341c69f2f6"
AFTER
"pluginrel_a2e56653ca94819195e9a1608bfba596"

changed /release/interface/composer_icon_dark_url

BEFORE
"https://files.openai.com/content?id=file_00000000f6a081f4a6af941a0fb50278"
AFTER
"https://files.openai.com/content?id=file_0000000086988246be617b2c2b22b25a"

changed /release/interface/composer_icon_url

BEFORE
"https://files.openai.com/content?id=file_00000000a414821193ffb212721694fe"
AFTER
"https://files.openai.com/content?id=file_000000005cd881f4a57ad61d3ec71058"

changed /release/interface/logo_url

BEFORE
"https://files.openai.com/content?id=file_00000000e7708243b97101590cddcc6e"
AFTER
"https://files.openai.com/content?id=file_00000000e3708246ae7d57b01071468f"

changed /release/interface/logo_url_dark

BEFORE
"https://files.openai.com/content?id=file_00000000355481f4b22cd0aedd50fcf3"
AFTER
"https://files.openai.com/content?id=file_0000000020d481f482eac131c5898268"

changed /release/skills

BEFORE
[
  {
    "description": "Ad concept multiplier for mobile app video ads in Lyra. Takes a concept (a winning ad, a Lyra workflow, a finished video, or a concept name like \"Authority figure\") and makes new ads on it with new angles, in one of two ways the user picks - A. Perspectives (the team framework, concept → angles → hooks: who else tells it and how they argue it, e.g. doctor, teacher, trainer, mom) or B. Reasons (the proven wrapper kept, a new reason to care: another pain, desire, objection, moment or feature from the Brand Kit, in the situation where it happens). Each angle is built as a Lyra variation. Use for \"more ads like this winner\", \"same concept, new angles\", \"multiply this concept\", \"1 concept, 4 angles, 20 hooks\", \"same format, different pain / story / setting\", \"the angle is tired, keep the format\", \"iterate on the winner\". Not for new openings only (lyra-video-hooks) or the same script for another person or market (lyra-audience-variations). Core video rules come from lyra-video-ad-generation.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-ad-concept-multiplier",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "bolt",
      "short_description": "Ad concept multiplier for mobile app video ads in Lyra. Takes a concept (a winning ad, a Lyra workflow, a finished video, or a concept name like \"Authority figure\") and makes new ads on it with new angles, in one of two ways the user picks - A. Perspectives (the team framework, concept → angles → hooks: who else tells it and how they argue it, e.g. doctor, teacher, trainer, mom) or B. Reasons (the proven wrapper kept, a new reason to care: another pain, desire, objection, moment or feature from the Brand Kit, in the situation where it happens). Each angle is built as a Lyra variation. Use for \"more ads like this winner\", \"same concept, new angles\", \"multiply this concept\", \"1 concept, 4 angles, 20 hooks\", \"same format, different pain / story / setting\", \"the angle is tired, keep the format\", \"iterate on the winner\". Not for new openings only (lyra-video-hooks) or the same script for another person or market (lyra-audience-variations). Core video rules come from lyra-video-ad-generation."
    },
    "name": "lyra-ad-concept-multiplier",
    "plugin_release_skill_id": "pluginrsk_6adf2423cc3081919a15bb59e9d4fdaf"
  },
  {
    "description": "Audience variations of a mobile app video ad in Lyra. The same ad, message and edit, with the visible world changed for another part of the app's audience from the Brand Kit, one layer or a coherent bundle at a time - the person (character swap), wardrobe and styling, setting and background, props and vehicles, time and season, market markers, voice and language, polish - each built as a Lyra variation of the original workflow. Use for \"swap the character\", \"same video with another person / another outfit / another room / another car\", \"a version for moms / men / 40+ / nurses\", \"localize for Brazil\", \"new faces or a new look for this winner\", \"test personas or settings\", \"persona A/B test\". Not for a new angle or message on the concept (lyra-ad-concept-multiplier). Core video rules come from lyra-video-ad-generation; person, voice and speech from lyra-ugc-video.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-audience-variations",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "bolt",
      "short_description": "Audience variations of a mobile app video ad in Lyra. The same ad, message and edit, with the visible world changed for another part of the app's audience from the Brand Kit, one layer or a coherent bundle at a time - the person (character swap), wardrobe and styling, setting and background, props and vehicles, time and season, market markers, voice and language, polish - each built as a Lyra variation of the original workflow. Use for \"swap the character\", \"same video with another person / another outfit / another room / another car\", \"a version for moms / men / 40+ / nurses\", \"localize for Brazil\", \"new faces or a new look for this winner\", \"test personas or settings\", \"persona A/B test\". Not for a new angle or message on the concept (lyra-ad-concept-multiplier). Core video rules come from lyra-video-ad-generation; person, voice and speech from lyra-ugc-video."
    },
    "name": "lyra-audience-variations",
    "plugin_release_skill_id": "pluginrsk_6adf2422cd9c819185b73f6190fa07ae"
  },
  {
    "description": "Carousel ads for mobile apps in Lyra, 2 to 10 cards that tell one consistent story (same person, world, palette, type and layout grid on every card), written as one carousel script and cut into cards by Lyra's Text Split node. Use for \"a carousel for my app\", \"5 cards that tell a story\", \"swipe ad\", \"step by step carousel\", \"feature carousel\", \"before / after carousel\", \"photo dump / slideshow\", \"TikTok photo carousel\", \"split this text into cards\", or a story, article or script to turn into cards. Core image rules come from lyra-static-image-generation.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-carousel",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "pen",
      "short_description": "Carousel ads for mobile apps in Lyra, 2 to 10 cards that tell one consistent story (same person, world, palette, type and layout grid on every card), written as one carousel script and cut into cards by Lyra's Text Split node. Use for \"a carousel for my app\", \"5 cards that tell a story\", \"swipe ad\", \"step by step carousel\", \"feature carousel\", \"before / after carousel\", \"photo dump / slideshow\", \"TikTok photo carousel\", \"split this text into cards\", or a story, article or script to turn into cards. Core image rules come from lyra-static-image-generation."
    },
    "name": "lyra-carousel",
    "plugin_release_skill_id": "pluginrsk_6adf2421c08c8191bfe0300e09731440"
  },
  {
    "description": "Copy a competitor's video ad for a mobile app in Lyra. Analyses the reference video in the team's video creative classification standard (Lyra's Creative Analysis node or Claude's own frame by frame teardown), takes every fact from the user's Brand Kit, offers ways to retell the reference, rewrites the script for the brand and the request, then generates the new video. Two modes, close remake (same beats, timing and shots) or free adaptation (same idea and structure). Use for \"copy this competitor ad\", \"make an ad like this one\", \"remake this video for my app\", \"do this TikTok / Reel for us\", \"analyse this ad and make ours\", a Meta Ad Library or TikTok link to a video, or any video reference to adapt. Static ads, banners and carousels go to lyra-copy-competitor-static. Core video rules come from lyra-video-ad-generation.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-copy-competitor-ad",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "code",
      "short_description": "Copy a competitor's video ad for a mobile app in Lyra. Analyses the reference video in the team's video creative classification standard (Lyra's Creative Analysis node or Claude's own frame by frame teardown), takes every fact from the user's Brand Kit, offers ways to retell the reference, rewrites the script for the brand and the request, then generates the new video. Two modes, close remake (same beats, timing and shots) or free adaptation (same idea and structure). Use for \"copy this competitor ad\", \"make an ad like this one\", \"remake this video for my app\", \"do this TikTok / Reel for us\", \"analyse this ad and make ours\", a Meta Ad Library or TikTok link to a video, or any video reference to adapt. Static ads, banners and carousels go to lyra-copy-competitor-static. Core video rules come from lyra-video-ad-generation."
    },
    "name": "lyra-copy-competitor-ad",
    "plugin_release_skill_id": "pluginrsk_6adf2423fea88191b94a516bfb962a35"
  },
  {
    "description": "Copy a competitor's static ad (one image, a carousel, several statics, or a key frame of their video) for a mobile app in Lyra. Analyses the reference in the team's static creative analysis standard (Claude's own look at the image, or Lyra's Creative Analysis node), takes every fact from the user's Brand Kit, offers a close remake and a free adaptation with variations, writes the new layout, text and Nano Banana Pro prompt, then generates the new static and its variants. Use for \"copy this competitor static\", \"make a banner like this one\", \"remake this image ad for my app\", \"do this carousel for us\", \"analyse this static and make ours\", \"a static from this competitor video\", a Meta Ad Library screenshot, or several competitor statics to learn from. Core image rules come from lyra-static-image-generation.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-copy-competitor-static",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "pen",
      "short_description": "Copy a competitor's static ad (one image, a carousel, several statics, or a key frame of their video) for a mobile app in Lyra. Analyses the reference in the team's static creative analysis standard (Claude's own look at the image, or Lyra's Creative Analysis node), takes every fact from the user's Brand Kit, offers a close remake and a free adaptation with variations, writes the new layout, text and Nano Banana Pro prompt, then generates the new static and its variants. Use for \"copy this competitor static\", \"make a banner like this one\", \"remake this image ad for my app\", \"do this carousel for us\", \"analyse this static and make ours\", \"a static from this competitor video\", a Meta Ad Library screenshot, or several competitor statics to learn from. Core image rules come from lyra-static-image-generation."
    },
    "name": "lyra-copy-competitor-static",
    "plugin_release_skill_id": "pluginrsk_6adf2421f03481919de5f9705b91ba41"
  },
  {
    "description": "Adapt a finished app ad image in Lyra to other aspect ratios and ad placements (Meta Feed, Stories and Reels, TikTok, Google App campaigns, link ads, banners) without losing anything - every element, text, color and style kept, the layout recomposed for the new frame and its safe zones. Picks the build per image and ratio (Lyra's Image Resize node, a Nano Banana Pro recompose, a rebuild from the concept card, or a canvas extension or crop for the designer) and checks every element. Use for \"make this in 9:16 and 1:1\", \"resize for Stories / Reels\", \"the same banner for Feed and Stories\", \"a 1.91:1 version\", \"all sizes for Meta\", \"a full size set\", \"Google App campaign sizes\", \"a 728x90 banner from this\", or a winning static to roll out to every placement. Core image rules come from lyra-static-image-generation.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-image-resize",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "cursor",
      "short_description": "Adapt a finished app ad image in Lyra to other aspect ratios and ad placements (Meta Feed, Stories and Reels, TikTok, Google App campaigns, link ads, banners) without losing anything - every element, text, color and style kept, the layout recomposed for the new frame and its safe zones. Picks the build per image and ratio (Lyra's Image Resize node, a Nano Banana Pro recompose, a rebuild from the concept card, or a canvas extension or crop for the designer) and checks every element. Use for \"make this in 9:16 and 1:1\", \"resize for Stories / Reels\", \"the same banner for Feed and Stories\", \"a 1.91:1 version\", \"all sizes for Meta\", \"a full size set\", \"Google App campaign sizes\", \"a 728x90 banner from this\", or a winning static to roll out to every placement. Core image rules come from lyra-static-image-generation."
    },
    "name": "lyra-image-resize",
    "plugin_release_skill_id": "pluginrsk_6adf2421cfc881919c8c08fb4d66ddfd"
  },
  {
    "description": "Translate and localize the text on finished app ad images in Lyra (statics, carousel cards, end cards, store screenshot captions) into other languages, keeping the design. Writes the copy for each market first (transcreation, glossary, length check), then picks the build per image - Lyra's Image Translation node, a Nano Banana Pro text-replace edit, a rebuild with localized screenshots, or a clean plate for the designer - and checks every letter. Use for \"translate this ad into German and Japanese\", \"localize the banner for Brazil\", \"the same static in 5 languages\", \"RU / ES / PT versions\", \"translate the carousel\", \"Arabic version\", \"translate the text on the creative\", or a winning static to roll out to new markets. Core image rules come from lyra-static-image-generation.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-image-translation",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "pen",
      "short_description": "Translate and localize the text on finished app ad images in Lyra (statics, carousel cards, end cards, store screenshot captions) into other languages, keeping the design. Writes the copy for each market first (transcreation, glossary, length check), then picks the build per image - Lyra's Image Translation node, a Nano Banana Pro text-replace edit, a rebuild with localized screenshots, or a clean plate for the designer - and checks every letter. Use for \"translate this ad into German and Japanese\", \"localize the banner for Brazil\", \"the same static in 5 languages\", \"RU / ES / PT versions\", \"translate the carousel\", \"Arabic version\", \"translate the text on the creative\", or a winning static to roll out to new markets. Core image rules come from lyra-static-image-generation."
    },
    "name": "lyra-image-translation",
    "plugin_release_skill_id": "pluginrsk_6adf2421c3088191b38f2b67b6550a14"
  },
  {
    "description": "Base skill for images in Lyra. Builds static ads and images for mobile apps end to end (concept, layout, on-image text, realism, model choice, references, sizes, languages) with a clear concept and layout, photo-real realism on Nano Banana Pro, de-slop and error handling. Use for \"a static ad for my app\", \"an image ad / banner / creative\", \"4 statics to test\", \"a carousel\", \"a realistic photo of…\", \"a character / persona image\", \"a product or phone shot\", \"an illustration in our style\", or a layout or reference to produce. Holds the core image rules the smaller lyra image skills point to.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-static-image-generation",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "pen",
      "short_description": "Base skill for images in Lyra. Builds static ads and images for mobile apps end to end (concept, layout, on-image text, realism, model choice, references, sizes, languages) with a clear concept and layout, photo-real realism on Nano Banana Pro, de-slop and error handling. Use for \"a static ad for my app\", \"an image ad / banner / creative\", \"4 statics to test\", \"a carousel\", \"a realistic photo of…\", \"a character / persona image\", \"a product or phone shot\", \"an illustration in our style\", or a layout or reference to produce. Holds the core image rules the smaller lyra image skills point to."
    },
    "name": "lyra-static-image-generation",
    "plugin_release_skill_id": "pluginrsk_6adf2422e0b48191805022f1ceba4325"
  },
  {
    "description": "UGC style video ads for mobile apps in Lyra, a realistic person talking to the phone camera in a real place, with their own voice and a speech built from the audience's pain, usually opened with a hook from lyra-video-hooks. Use for \"a UGC video\", \"UGC ad for my app\", \"a creator / influencer style ad\", \"talking head\", \"testimonial style\", \"storytime\", \"car vlog\", \"street interview\", \"a skit\", \"day in my life\", \"honest review\", or a Lyra UGC or Talking Head template. Core video rules come from lyra-video-ad-generation.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-ugc-video",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "pen",
      "short_description": "UGC style video ads for mobile apps in Lyra, a realistic person talking to the phone camera in a real place, with their own voice and a speech built from the audience's pain, usually opened with a hook from lyra-video-hooks. Use for \"a UGC video\", \"UGC ad for my app\", \"a creator / influencer style ad\", \"talking head\", \"testimonial style\", \"storytime\", \"car vlog\", \"street interview\", \"a skit\", \"day in my life\", \"honest review\", or a Lyra UGC or Talking Head template. Core video rules come from lyra-video-ad-generation."
    },
    "name": "lyra-ugc-video",
    "plugin_release_skill_id": "pluginrsk_6adf2423ae008191a6da72fd7aa4b0a9"
  },
  {
    "description": "App UI creatives in Lyra with every UI text kept exactly as in the user's screenshots - UI motion video ads (real app screens, buttons, cards, logo and icon in motion), store-style end cards with an install button, and App Store / Google Play screenshot sets with variants. Use for \"animate my app screens\", \"UI animation / motion design ad\", \"floating phone video\", \"show the app in the video\", \"end card with install button\", \"packshot like the App Store\", \"store screenshots\", \"screenshot set for Google Play\", or screenshots to bring to life. Core video rules come from lyra-video-ad-generation.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-ui-motion-video",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "code",
      "short_description": "App UI creatives in Lyra with every UI text kept exactly as in the user's screenshots - UI motion video ads (real app screens, buttons, cards, logo and icon in motion), store-style end cards with an install button, and App Store / Google Play screenshot sets with variants. Use for \"animate my app screens\", \"UI animation / motion design ad\", \"floating phone video\", \"show the app in the video\", \"end card with install button\", \"packshot like the App Store\", \"store screenshots\", \"screenshot set for Google Play\", or screenshots to bring to life. Core video rules come from lyra-video-ad-generation."
    },
    "name": "lyra-ui-motion-video",
    "plugin_release_skill_id": "pluginrsk_6adf2422e2cc8191999590a94d27fdc5"
  },
  {
    "description": "Base skill for video ads in Lyra. Builds a mobile app video ad end to end (brief, script, scenes, keyframes, clips, voiceover, music, Video Editor assembly) with scene consistency, de-slop and error handling. Use for \"a 15-second video ad for my app\", \"a 30 s / 1 min ad\", \"a sequence of scenes\", \"stitch these clips\", or a script or storyboard to produce. Holds the core video rules the smaller lyra video skills point to.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-video-ad-generation",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "bolt",
      "short_description": "Base skill for video ads in Lyra. Builds a mobile app video ad end to end (brief, script, scenes, keyframes, clips, voiceover, music, Video Editor assembly) with scene consistency, de-slop and error handling. Use for \"a 15-second video ad for my app\", \"a 30 s / 1 min ad\", \"a sequence of scenes\", \"stitch these clips\", or a script or storyboard to produce. Holds the core video rules the smaller lyra video skills point to."
    },
    "name": "lyra-video-ad-generation",
    "plugin_release_skill_id": "pluginrsk_6adf2423cee48191b9f8d3b3f4944dfd"
  },
  {
    "description": "Hooks for mobile app video ads in Lyra, built from the Brand Kit and the audience's real pains, then turned into finished videos for an A/B test. Use for \"hooks for my app\", \"4 hook variants\", \"write hooks / a hook bank\", \"a visual hook\", \"a catchy / brainrot hook\", \"hook multiplier\", \"test new openings on this ad\", \"the hook is weak / hook rate dropped\", \"a stronger first 3 seconds\", or a Lyra Hook template. Core video rules come from lyra-video-ad-generation.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-video-hooks",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "bolt",
      "short_description": "Hooks for mobile app video ads in Lyra, built from the Brand Kit and the audience's real pains, then turned into finished videos for an A/B test. Use for \"hooks for my app\", \"4 hook variants\", \"write hooks / a hook bank\", \"a visual hook\", \"a catchy / brainrot hook\", \"hook multiplier\", \"test new openings on this ad\", \"the hook is weak / hook rate dropped\", \"a stronger first 3 seconds\", or a Lyra Hook template. Core video rules come from lyra-video-ad-generation."
    },
    "name": "lyra-video-hooks",
    "plugin_release_skill_id": "pluginrsk_6adf2422b5f88191a72bfd989252ee14"
  }
]
AFTER
[
  {
    "description": "Ad concept multiplier for mobile app video ads in Lyra. Takes a concept (a winning ad, a Lyra workflow, a finished video, or a concept name like \"Authority figure\") and makes new ads on it with new angles, in one of two ways the user picks - A. Perspectives (the team framework, concept → angles → hooks: who else tells it and how they argue it, e.g. doctor, teacher, trainer, mom) or B. Reasons (the proven wrapper kept, a new reason to care: another pain, desire, objection, moment or feature from the Brand Kit, in the situation where it happens). Each angle is built as a Lyra variation. Use for \"more ads like this winner\", \"same concept, new angles\", \"multiply this concept\", \"1 concept, 4 angles, 20 hooks\", \"same format, different pain / story / setting\", \"the angle is tired, keep the format\", \"iterate on the winner\". Not for new openings only (lyra-video-hooks) or the same script for another person or market (lyra-audience-variations). Core video rules come from lyra-video-ad-generation.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-ad-concept-multiplier",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "bolt",
      "short_description": "Ad concept multiplier for mobile app video ads in Lyra. Takes a concept (a winning ad, a Lyra workflow, a finished video, or a concept name like \"Authority figure\") and makes new ads on it with new angles, in one of two ways the user picks - A. Perspectives (the team framework, concept → angles → hooks: who else tells it and how they argue it, e.g. doctor, teacher, trainer, mom) or B. Reasons (the proven wrapper kept, a new reason to care: another pain, desire, objection, moment or feature from the Brand Kit, in the situation where it happens). Each angle is built as a Lyra variation. Use for \"more ads like this winner\", \"same concept, new angles\", \"multiply this concept\", \"1 concept, 4 angles, 20 hooks\", \"same format, different pain / story / setting\", \"the angle is tired, keep the format\", \"iterate on the winner\". Not for new openings only (lyra-video-hooks) or the same script for another person or market (lyra-audience-variations). Core video rules come from lyra-video-ad-generation."
    },
    "name": "lyra-ad-concept-multiplier",
    "plugin_release_skill_id": "pluginrsk_6ae0fa82ff2c8191beccdd402f957833"
  },
  {
    "description": "Audience variations of a mobile app video ad in Lyra. The same ad, message and edit, with the visible world changed for another part of the app's audience from the Brand Kit, one layer or a coherent bundle at a time - the person (character swap), wardrobe and styling, setting and background, props and vehicles, time and season, market markers, voice and language, polish - each built as a Lyra variation of the original workflow. Use for \"swap the character\", \"same video with another person / another outfit / another room / another car\", \"a version for moms / men / 40+ / nurses\", \"localize for Brazil\", \"new faces or a new look for this winner\", \"test personas or settings\", \"persona A/B test\". Not for a new angle or message on the concept (lyra-ad-concept-multiplier). Core video rules come from lyra-video-ad-generation; person, voice and speech from lyra-ugc-video.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-audience-variations",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "bolt",
      "short_description": "Audience variations of a mobile app video ad in Lyra. The same ad, message and edit, with the visible world changed for another part of the app's audience from the Brand Kit, one layer or a coherent bundle at a time - the person (character swap), wardrobe and styling, setting and background, props and vehicles, time and season, market markers, voice and language, polish - each built as a Lyra variation of the original workflow. Use for \"swap the character\", \"same video with another person / another outfit / another room / another car\", \"a version for moms / men / 40+ / nurses\", \"localize for Brazil\", \"new faces or a new look for this winner\", \"test personas or settings\", \"persona A/B test\". Not for a new angle or message on the concept (lyra-ad-concept-multiplier). Core video rules come from lyra-video-ad-generation; person, voice and speech from lyra-ugc-video."
    },
    "name": "lyra-audience-variations",
    "plugin_release_skill_id": "pluginrsk_6ae0fa821084819180a9f2b820e2de6f"
  },
  {
    "description": "Carousel ads for mobile apps in Lyra, 2 to 10 cards that tell one consistent story (same person, world, palette, type and layout grid on every card), written as one carousel script and cut into cards by Lyra's Text Split node. Use for \"a carousel for my app\", \"5 cards that tell a story\", \"swipe ad\", \"step by step carousel\", \"feature carousel\", \"before / after carousel\", \"photo dump / slideshow\", \"TikTok photo carousel\", \"split this text into cards\", or a story, article or script to turn into cards. Core image rules come from lyra-static-image-generation.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-carousel",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "hierarchy",
      "short_description": "Carousel ads for mobile apps in Lyra, 2 to 10 cards that tell one consistent story (same person, world, palette, type and layout grid on every card), written as one carousel script and cut into cards by Lyra's Text Split node. Use for \"a carousel for my app\", \"5 cards that tell a story\", \"swipe ad\", \"step by step carousel\", \"feature carousel\", \"before / after carousel\", \"photo dump / slideshow\", \"TikTok photo carousel\", \"split this text into cards\", or a story, article or script to turn into cards. Core image rules come from lyra-static-image-generation."
    },
    "name": "lyra-carousel",
    "plugin_release_skill_id": "pluginrsk_6ae0fa820ee4819186815592cb13f5ad"
  },
  {
    "description": "Copy a competitor's video ad for a mobile app in Lyra. Analyses the reference video in the team's video creative classification standard (Lyra's Creative Analysis node or Claude's own frame by frame teardown), takes every fact from the user's Brand Kit, offers ways to retell the reference, rewrites the script for the brand and the request, then generates the new video. Two modes, close remake (same beats, timing and shots) or free adaptation (same idea and structure). Use for \"copy this competitor ad\", \"make an ad like this one\", \"remake this video for my app\", \"do this TikTok / Reel for us\", \"analyse this ad and make ours\", a Meta Ad Library or TikTok link to a video, or any video reference to adapt. Static ads, banners and carousels go to lyra-copy-competitor-static. Core video rules come from lyra-video-ad-generation.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-copy-competitor-ad",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "code",
      "short_description": "Copy a competitor's video ad for a mobile app in Lyra. Analyses the reference video in the team's video creative classification standard (Lyra's Creative Analysis node or Claude's own frame by frame teardown), takes every fact from the user's Brand Kit, offers ways to retell the reference, rewrites the script for the brand and the request, then generates the new video. Two modes, close remake (same beats, timing and shots) or free adaptation (same idea and structure). Use for \"copy this competitor ad\", \"make an ad like this one\", \"remake this video for my app\", \"do this TikTok / Reel for us\", \"analyse this ad and make ours\", a Meta Ad Library or TikTok link to a video, or any video reference to adapt. Static ads, banners and carousels go to lyra-copy-competitor-static. Core video rules come from lyra-video-ad-generation."
    },
    "name": "lyra-copy-competitor-ad",
    "plugin_release_skill_id": "pluginrsk_6ae0fa84c82c81918edb9310230cc3e2"
  },
  {
    "description": "Copy a competitor's static ad (one image, a carousel, several statics, or a key frame of their video) for a mobile app in Lyra. Analyses the reference in the team's static creative analysis standard (Claude's own look at the image, or Lyra's Creative Analysis node), takes every fact from the user's Brand Kit, offers a close remake and a free adaptation with variations, writes the new layout, text and Nano Banana Pro prompt, then generates the new static and its variants. Use for \"copy this competitor static\", \"make a banner like this one\", \"remake this image ad for my app\", \"do this carousel for us\", \"analyse this static and make ours\", \"a static from this competitor video\", a Meta Ad Library screenshot, or several competitor statics to learn from. Core image rules come from lyra-static-image-generation.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-copy-competitor-static",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "pen",
      "short_description": "Copy a competitor's static ad (one image, a carousel, several statics, or a key frame of their video) for a mobile app in Lyra. Analyses the reference in the team's static creative analysis standard (Claude's own look at the image, or Lyra's Creative Analysis node), takes every fact from the user's Brand Kit, offers a close remake and a free adaptation with variations, writes the new layout, text and Nano Banana Pro prompt, then generates the new static and its variants. Use for \"copy this competitor static\", \"make a banner like this one\", \"remake this image ad for my app\", \"do this carousel for us\", \"analyse this static and make ours\", \"a static from this competitor video\", a Meta Ad Library screenshot, or several competitor statics to learn from. Core image rules come from lyra-static-image-generation."
    },
    "name": "lyra-copy-competitor-static",
    "plugin_release_skill_id": "pluginrsk_6ae0fa83c5f481918e37fb846463e962"
  },
  {
    "description": "Adapt a finished app ad image in Lyra to other aspect ratios and ad placements (Meta Feed, Stories and Reels, TikTok, Google App campaigns, link ads, banners) without losing anything - every element, text, color and style kept, the layout recomposed for the new frame and its safe zones. Picks the build per image and ratio (Lyra's Image Resize node, a Nano Banana Pro recompose, a rebuild from the concept card, or a canvas extension or crop for the designer) and checks every element. Use for \"make this in 9:16 and 1:1\", \"resize for Stories / Reels\", \"the same banner for Feed and Stories\", \"a 1.91:1 version\", \"all sizes for Meta\", \"a full size set\", \"Google App campaign sizes\", \"a 728x90 banner from this\", or a winning static to roll out to every placement. Core image rules come from lyra-static-image-generation.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-image-resize",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "cursor",
      "short_description": "Adapt a finished app ad image in Lyra to other aspect ratios and ad placements (Meta Feed, Stories and Reels, TikTok, Google App campaigns, link ads, banners) without losing anything - every element, text, color and style kept, the layout recomposed for the new frame and its safe zones. Picks the build per image and ratio (Lyra's Image Resize node, a Nano Banana Pro recompose, a rebuild from the concept card, or a canvas extension or crop for the designer) and checks every element. Use for \"make this in 9:16 and 1:1\", \"resize for Stories / Reels\", \"the same banner for Feed and Stories\", \"a 1.91:1 version\", \"all sizes for Meta\", \"a full size set\", \"Google App campaign sizes\", \"a 728x90 banner from this\", or a winning static to roll out to every placement. Core image rules come from lyra-static-image-generation."
    },
    "name": "lyra-image-resize",
    "plugin_release_skill_id": "pluginrsk_6ae0fa840a5c8191b9373125ddcb7f60"
  },
  {
    "description": "Translate and localize the text on finished app ad images in Lyra (statics, carousel cards, end cards, store screenshot captions) into other languages, keeping the design. Writes the copy for each market first (transcreation, glossary, length check), then picks the build per image - Lyra's Image Translation node, a Nano Banana Pro text-replace edit, a rebuild with localized screenshots, or a clean plate for the designer - and checks every letter. Use for \"translate this ad into German and Japanese\", \"localize the banner for Brazil\", \"the same static in 5 languages\", \"RU / ES / PT versions\", \"translate the carousel\", \"Arabic version\", \"translate the text on the creative\", or a winning static to roll out to new markets. Core image rules come from lyra-static-image-generation.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-image-translation",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "pen",
      "short_description": "Translate and localize the text on finished app ad images in Lyra (statics, carousel cards, end cards, store screenshot captions) into other languages, keeping the design. Writes the copy for each market first (transcreation, glossary, length check), then picks the build per image - Lyra's Image Translation node, a Nano Banana Pro text-replace edit, a rebuild with localized screenshots, or a clean plate for the designer - and checks every letter. Use for \"translate this ad into German and Japanese\", \"localize the banner for Brazil\", \"the same static in 5 languages\", \"RU / ES / PT versions\", \"translate the carousel\", \"Arabic version\", \"translate the text on the creative\", or a winning static to roll out to new markets. Core image rules come from lyra-static-image-generation."
    },
    "name": "lyra-image-translation",
    "plugin_release_skill_id": "pluginrsk_6ae0fa8335088191859bf9fd253f80cf"
  },
  {
    "description": "Base skill for images in Lyra. Builds static ads and images for mobile apps end to end (concept, layout, on-image text, realism, model choice, references, sizes, languages) with a clear concept and layout, photo-real realism on Nano Banana Pro, de-slop and error handling. Use for \"a static ad for my app\", \"an image ad / banner / creative\", \"4 statics to test\", \"a carousel\", \"a realistic photo of…\", \"a character / persona image\", \"a product or phone shot\", \"an illustration in our style\", or a layout or reference to produce. Holds the core image rules the smaller lyra image skills point to.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-static-image-generation",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "bolt",
      "short_description": "Base skill for images in Lyra. Builds static ads and images for mobile apps end to end (concept, layout, on-image text, realism, model choice, references, sizes, languages) with a clear concept and layout, photo-real realism on Nano Banana Pro, de-slop and error handling. Use for \"a static ad for my app\", \"an image ad / banner / creative\", \"4 statics to test\", \"a carousel\", \"a realistic photo of…\", \"a character / persona image\", \"a product or phone shot\", \"an illustration in our style\", or a layout or reference to produce. Holds the core image rules the smaller lyra image skills point to."
    },
    "name": "lyra-static-image-generation",
    "plugin_release_skill_id": "pluginrsk_6ae0fa84a5d48191ac9feb8610a69e9b"
  },
  {
    "description": "UGC style video ads for mobile apps in Lyra, a realistic person talking to the phone camera in a real place, with their own voice and a speech built from the audience's pain, usually opened with a hook from lyra-video-hooks. Use for \"a UGC video\", \"UGC ad for my app\", \"a creator / influencer style ad\", \"talking head\", \"testimonial style\", \"storytime\", \"car vlog\", \"street interview\", \"a skit\", \"day in my life\", \"honest review\", or a Lyra UGC or Talking Head template. Core video rules come from lyra-video-ad-generation.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-ugc-video",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "bolt",
      "short_description": "UGC style video ads for mobile apps in Lyra, a realistic person talking to the phone camera in a real place, with their own voice and a speech built from the audience's pain, usually opened with a hook from lyra-video-hooks. Use for \"a UGC video\", \"UGC ad for my app\", \"a creator / influencer style ad\", \"talking head\", \"testimonial style\", \"storytime\", \"car vlog\", \"street interview\", \"a skit\", \"day in my life\", \"honest review\", or a Lyra UGC or Talking Head template. Core video rules come from lyra-video-ad-generation."
    },
    "name": "lyra-ugc-video",
    "plugin_release_skill_id": "pluginrsk_6ae0fa8222b481918653307c02d9e74b"
  },
  {
    "description": "App UI creatives in Lyra with every UI text kept exactly as in the user's screenshots - UI motion video ads (real app screens, buttons, cards, logo and icon in motion), store-style end cards with an install button, and App Store / Google Play screenshot sets with variants. Use for \"animate my app screens\", \"UI animation / motion design ad\", \"floating phone video\", \"show the app in the video\", \"end card with install button\", \"packshot like the App Store\", \"store screenshots\", \"screenshot set for Google Play\", or screenshots to bring to life. Core video rules come from lyra-video-ad-generation.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-ui-motion-video",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "code",
      "short_description": "App UI creatives in Lyra with every UI text kept exactly as in the user's screenshots - UI motion video ads (real app screens, buttons, cards, logo and icon in motion), store-style end cards with an install button, and App Store / Google Play screenshot sets with variants. Use for \"animate my app screens\", \"UI animation / motion design ad\", \"floating phone video\", \"show the app in the video\", \"end card with install button\", \"packshot like the App Store\", \"store screenshots\", \"screenshot set for Google Play\", or screenshots to bring to life. Core video rules come from lyra-video-ad-generation."
    },
    "name": "lyra-ui-motion-video",
    "plugin_release_skill_id": "pluginrsk_6ae0fa82111c81919046d14ed3ee7215"
  },
  {
    "description": "Base skill for video ads in Lyra. Builds a mobile app video ad end to end (brief, script, scenes, keyframes, clips, voiceover, music, Video Editor assembly) with scene consistency, de-slop and error handling. Use for \"a 15-second video ad for my app\", \"a 30 s / 1 min ad\", \"a sequence of scenes\", \"stitch these clips\", or a script or storyboard to produce. Holds the core video rules the smaller lyra video skills point to.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-video-ad-generation",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "bolt",
      "short_description": "Base skill for video ads in Lyra. Builds a mobile app video ad end to end (brief, script, scenes, keyframes, clips, voiceover, music, Video Editor assembly) with scene consistency, de-slop and error handling. Use for \"a 15-second video ad for my app\", \"a 30 s / 1 min ad\", \"a sequence of scenes\", \"stitch these clips\", or a script or storyboard to produce. Holds the core video rules the smaller lyra video skills point to."
    },
    "name": "lyra-video-ad-generation",
    "plugin_release_skill_id": "pluginrsk_6ae0fa84ae048191a84028fee1856c98"
  },
  {
    "description": "Hooks for mobile app video ads in Lyra, built from the Brand Kit and the audience's real pains, then turned into finished videos for an A/B test. Use for \"hooks for my app\", \"4 hook variants\", \"write hooks / a hook bank\", \"a visual hook\", \"a catchy / brainrot hook\", \"hook multiplier\", \"test new openings on this ad\", \"the hook is weak / hook rate dropped\", \"a stronger first 3 seconds\", or a Lyra Hook template. Core video rules come from lyra-video-ad-generation.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "lyra-video-hooks",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "bolt",
      "short_description": "Hooks for mobile app video ads in Lyra, built from the Brand Kit and the audience's real pains, then turned into finished videos for an A/B test. Use for \"hooks for my app\", \"4 hook variants\", \"write hooks / a hook bank\", \"a visual hook\", \"a catchy / brainrot hook\", \"hook multiplier\", \"test new openings on this ad\", \"the hook is weak / hook rate dropped\", \"a stronger first 3 seconds\", or a Lyra Hook template. Core video rules come from lyra-video-ad-generation."
    },
    "name": "lyra-video-hooks",
    "plugin_release_skill_id": "pluginrsk_6ae0fa83c35881918a62cd9e2661dc65"
  }
]

changed /release/version

BEFORE
"0.4.0"
AFTER
"0.4.2"
Full snapshot data
{
  "canonical_app_id": "asdk_app_6adf1d066ee48191a687af733ab287a3",
  "connector_id": "asdk_app_6adf1d066ee48191a687af733ab287a3",
  "created_at": "2026-10-26T13:06:27.243172Z",
  "discoverability": "LISTED",
  "id": "plugin_asdk_app_6adf1d066ee48191a687af733ab287a3",
  "is_template": false,
  "is_template_instance": false,
  "is_v2_template": false,
  "name": "lyra-mcp-skills",
  "release": {
    "app_ids": [
      "asdk_app_6adf1d066ee48191a687af733ab287a3"
    ],
    "app_manifest": {
      "apps": {
        "lyra": {
          "id": "asdk_app_6adf1d066ee48191a687af733ab287a3",
          "required": true
        }
      }
    },
    "app_templates": [],
    "description": "Mobile app ad creatives on the Lyra (Muse) MCP server: static images, carousels, video ads, UGC, hooks, UI motion and store screenshots, competitor remakes, audience variations, concept angles, resizing and translation.",
    "display_name": "SplitMetrics Lyra",
    "id": "pluginrel_a2e56653ca94819195e9a1608bfba596",
    "interface": {
      "brand_color": "#F97316",
      "capabilities": [
        "Interactive",
        "Read",
        "Write"
      ],
      "category": "Creativity",
      "composer_icon_dark_url": "https://files.openai.com/content?id=file_0000000086988246be617b2c2b22b25a",
      "composer_icon_url": "https://files.openai.com/content?id=file_000000005cd881f4a57ad61d3ec71058",
      "default_prompt": "Make a UGC video ad for my app from a Lyra template",
      "default_prompts": [
        "Make a UGC video ad for my app from a Lyra template",
        "Generate a 9:16 image in Lyra and animate it into a video",
        "Show my Lyra workflows"
      ],
      "developer_name": "SplitMetrics",
      "logo_url": "https://files.openai.com/content?id=file_00000000e3708246ae7d57b01071468f",
      "logo_url_dark": "https://files.openai.com/content?id=file_0000000020d481f482eac131c5898268",
      "long_description": "Connects the Lyra MCP server and adds skills for mobile app ad creatives: static images and carousels, video ads, UGC and hooks, UI motion and store screenshots, competitor remakes, audience variations and new angles on a winning concept, resizing and translation. Generation spends your Lyra workspace's credits; the skills confirm before every run.",
      "plugin_category_id": "creativity",
      "privacy_policy_url": "https://splitmetrics.com/legal/privacy-policy/",
      "screenshot_urls": [],
      "short_description": "Create ad images and videos",
      "terms_of_service_url": "https://splitmetrics.com/legal/terms-of-service/",
      "website_url": "https://lyra.splitmetrics.com/"
    },
    "keywords": [
      "lyra",
      "muse",
      "image-generation",
      "video-generation",
      "voiceover",
      "mcp"
    ],
    "mcp_servers": [
      {
        "key": "lyra",
        "metadata": {
          "extensions": {
            "com.openai": {
              "auth": {
                "client": {
                  "mode": "dcr"
                },
                "type": "oauth"
              }
            }
          },
          "headers": {},
          "type": "streamable-http",
          "url": "https://mcp-lyra.splitmetrics.com"
        }
      }
    ],
    "onboarding_skill_name": null,
    "requires_local_executor": false,
    "skills": [
      {
        "description": "Ad concept multiplier for mobile app video ads in Lyra. Takes a concept (a winning ad, a Lyra workflow, a finished video, or a concept name like \"Authority figure\") and makes new ads on it with new angles, in one of two ways the user picks - A. Perspectives (the team framework, concept → angles → hooks: who else tells it and how they argue it, e.g. doctor, teacher, trainer, mom) or B. Reasons (the proven wrapper kept, a new reason to care: another pain, desire, objection, moment or feature from the Brand Kit, in the situation where it happens). Each angle is built as a Lyra variation. Use for \"more ads like this winner\", \"same concept, new angles\", \"multiply this concept\", \"1 concept, 4 angles, 20 hooks\", \"same format, different pain / story / setting\", \"the angle is tired, keep the format\", \"iterate on the winner\". Not for new openings only (lyra-video-hooks) or the same script for another person or market (lyra-audience-variations). Core video rules come from lyra-video-ad-generation.",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "lyra-ad-concept-multiplier",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "bolt",
          "short_description": "Ad concept multiplier for mobile app video ads in Lyra. Takes a concept (a winning ad, a Lyra workflow, a finished video, or a concept name like \"Authority figure\") and makes new ads on it with new angles, in one of two ways the user picks - A. Perspectives (the team framework, concept → angles → hooks: who else tells it and how they argue it, e.g. doctor, teacher, trainer, mom) or B. Reasons (the proven wrapper kept, a new reason to care: another pain, desire, objection, moment or feature from the Brand Kit, in the situation where it happens). Each angle is built as a Lyra variation. Use for \"more ads like this winner\", \"same concept, new angles\", \"multiply this concept\", \"1 concept, 4 angles, 20 hooks\", \"same format, different pain / story / setting\", \"the angle is tired, keep the format\", \"iterate on the winner\". Not for new openings only (lyra-video-hooks) or the same script for another person or market (lyra-audience-variations). Core video rules come from lyra-video-ad-generation."
        },
        "name": "lyra-ad-concept-multiplier",
        "plugin_release_skill_id": "pluginrsk_6ae0fa82ff2c8191beccdd402f957833"
      },
      {
        "description": "Audience variations of a mobile app video ad in Lyra. The same ad, message and edit, with the visible world changed for another part of the app's audience from the Brand Kit, one layer or a coherent bundle at a time - the person (character swap), wardrobe and styling, setting and background, props and vehicles, time and season, market markers, voice and language, polish - each built as a Lyra variation of the original workflow. Use for \"swap the character\", \"same video with another person / another outfit / another room / another car\", \"a version for moms / men / 40+ / nurses\", \"localize for Brazil\", \"new faces or a new look for this winner\", \"test personas or settings\", \"persona A/B test\". Not for a new angle or message on the concept (lyra-ad-concept-multiplier). Core video rules come from lyra-video-ad-generation; person, voice and speech from lyra-ugc-video.",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "lyra-audience-variations",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "bolt",
          "short_description": "Audience variations of a mobile app video ad in Lyra. The same ad, message and edit, with the visible world changed for another part of the app's audience from the Brand Kit, one layer or a coherent bundle at a time - the person (character swap), wardrobe and styling, setting and background, props and vehicles, time and season, market markers, voice and language, polish - each built as a Lyra variation of the original workflow. Use for \"swap the character\", \"same video with another person / another outfit / another room / another car\", \"a version for moms / men / 40+ / nurses\", \"localize for Brazil\", \"new faces or a new look for this winner\", \"test personas or settings\", \"persona A/B test\". Not for a new angle or message on the concept (lyra-ad-concept-multiplier). Core video rules come from lyra-video-ad-generation; person, voice and speech from lyra-ugc-video."
        },
        "name": "lyra-audience-variations",
        "plugin_release_skill_id": "pluginrsk_6ae0fa821084819180a9f2b820e2de6f"
      },
      {
        "description": "Carousel ads for mobile apps in Lyra, 2 to 10 cards that tell one consistent story (same person, world, palette, type and layout grid on every card), written as one carousel script and cut into cards by Lyra's Text Split node. Use for \"a carousel for my app\", \"5 cards that tell a story\", \"swipe ad\", \"step by step carousel\", \"feature carousel\", \"before / after carousel\", \"photo dump / slideshow\", \"TikTok photo carousel\", \"split this text into cards\", or a story, article or script to turn into cards. Core image rules come from lyra-static-image-generation.",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "lyra-carousel",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "hierarchy",
          "short_description": "Carousel ads for mobile apps in Lyra, 2 to 10 cards that tell one consistent story (same person, world, palette, type and layout grid on every card), written as one carousel script and cut into cards by Lyra's Text Split node. Use for \"a carousel for my app\", \"5 cards that tell a story\", \"swipe ad\", \"step by step carousel\", \"feature carousel\", \"before / after carousel\", \"photo dump / slideshow\", \"TikTok photo carousel\", \"split this text into cards\", or a story, article or script to turn into cards. Core image rules come from lyra-static-image-generation."
        },
        "name": "lyra-carousel",
        "plugin_release_skill_id": "pluginrsk_6ae0fa820ee4819186815592cb13f5ad"
      },
      {
        "description": "Copy a competitor's video ad for a mobile app in Lyra. Analyses the reference video in the team's video creative classification standard (Lyra's Creative Analysis node or Claude's own frame by frame teardown), takes every fact from the user's Brand Kit, offers ways to retell the reference, rewrites the script for the brand and the request, then generates the new video. Two modes, close remake (same beats, timing and shots) or free adaptation (same idea and structure). Use for \"copy this competitor ad\", \"make an ad like this one\", \"remake this video for my app\", \"do this TikTok / Reel for us\", \"analyse this ad and make ours\", a Meta Ad Library or TikTok link to a video, or any video reference to adapt. Static ads, banners and carousels go to lyra-copy-competitor-static. Core video rules come from lyra-video-ad-generation.",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "lyra-copy-competitor-ad",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "code",
          "short_description": "Copy a competitor's video ad for a mobile app in Lyra. Analyses the reference video in the team's video creative classification standard (Lyra's Creative Analysis node or Claude's own frame by frame teardown), takes every fact from the user's Brand Kit, offers ways to retell the reference, rewrites the script for the brand and the request, then generates the new video. Two modes, close remake (same beats, timing and shots) or free adaptation (same idea and structure). Use for \"copy this competitor ad\", \"make an ad like this one\", \"remake this video for my app\", \"do this TikTok / Reel for us\", \"analyse this ad and make ours\", a Meta Ad Library or TikTok link to a video, or any video reference to adapt. Static ads, banners and carousels go to lyra-copy-competitor-static. Core video rules come from lyra-video-ad-generation."
        },
        "name": "lyra-copy-competitor-ad",
        "plugin_release_skill_id": "pluginrsk_6ae0fa84c82c81918edb9310230cc3e2"
      },
      {
        "description": "Copy a competitor's static ad (one image, a carousel, several statics, or a key frame of their video) for a mobile app in Lyra. Analyses the reference in the team's static creative analysis standard (Claude's own look at the image, or Lyra's Creative Analysis node), takes every fact from the user's Brand Kit, offers a close remake and a free adaptation with variations, writes the new layout, text and Nano Banana Pro prompt, then generates the new static and its variants. Use for \"copy this competitor static\", \"make a banner like this one\", \"remake this image ad for my app\", \"do this carousel for us\", \"analyse this static and make ours\", \"a static from this competitor video\", a Meta Ad Library screenshot, or several competitor statics to learn from. Core image rules come from lyra-static-image-generation.",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "lyra-copy-competitor-static",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "pen",
          "short_description": "Copy a competitor's static ad (one image, a carousel, several statics, or a key frame of their video) for a mobile app in Lyra. Analyses the reference in the team's static creative analysis standard (Claude's own look at the image, or Lyra's Creative Analysis node), takes every fact from the user's Brand Kit, offers a close remake and a free adaptation with variations, writes the new layout, text and Nano Banana Pro prompt, then generates the new static and its variants. Use for \"copy this competitor static\", \"make a banner like this one\", \"remake this image ad for my app\", \"do this carousel for us\", \"analyse this static and make ours\", \"a static from this competitor video\", a Meta Ad Library screenshot, or several competitor statics to learn from. Core image rules come from lyra-static-image-generation."
        },
        "name": "lyra-copy-competitor-static",
        "plugin_release_skill_id": "pluginrsk_6ae0fa83c5f481918e37fb846463e962"
      },
      {
        "description": "Adapt a finished app ad image in Lyra to other aspect ratios and ad placements (Meta Feed, Stories and Reels, TikTok, Google App campaigns, link ads, banners) without losing anything - every element, text, color and style kept, the layout recomposed for the new frame and its safe zones. Picks the build per image and ratio (Lyra's Image Resize node, a Nano Banana Pro recompose, a rebuild from the concept card, or a canvas extension or crop for the designer) and checks every element. Use for \"make this in 9:16 and 1:1\", \"resize for Stories / Reels\", \"the same banner for Feed and Stories\", \"a 1.91:1 version\", \"all sizes for Meta\", \"a full size set\", \"Google App campaign sizes\", \"a 728x90 banner from this\", or a winning static to roll out to every placement. Core image rules come from lyra-static-image-generation.",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "lyra-image-resize",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "cursor",
          "short_description": "Adapt a finished app ad image in Lyra to other aspect ratios and ad placements (Meta Feed, Stories and Reels, TikTok, Google App campaigns, link ads, banners) without losing anything - every element, text, color and style kept, the layout recomposed for the new frame and its safe zones. Picks the build per image and ratio (Lyra's Image Resize node, a Nano Banana Pro recompose, a rebuild from the concept card, or a canvas extension or crop for the designer) and checks every element. Use for \"make this in 9:16 and 1:1\", \"resize for Stories / Reels\", \"the same banner for Feed and Stories\", \"a 1.91:1 version\", \"all sizes for Meta\", \"a full size set\", \"Google App campaign sizes\", \"a 728x90 banner from this\", or a winning static to roll out to every placement. Core image rules come from lyra-static-image-generation."
        },
        "name": "lyra-image-resize",
        "plugin_release_skill_id": "pluginrsk_6ae0fa840a5c8191b9373125ddcb7f60"
      },
      {
        "description": "Translate and localize the text on finished app ad images in Lyra (statics, carousel cards, end cards, store screenshot captions) into other languages, keeping the design. Writes the copy for each market first (transcreation, glossary, length check), then picks the build per image - Lyra's Image Translation node, a Nano Banana Pro text-replace edit, a rebuild with localized screenshots, or a clean plate for the designer - and checks every letter. Use for \"translate this ad into German and Japanese\", \"localize the banner for Brazil\", \"the same static in 5 languages\", \"RU / ES / PT versions\", \"translate the carousel\", \"Arabic version\", \"translate the text on the creative\", or a winning static to roll out to new markets. Core image rules come from lyra-static-image-generation.",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "lyra-image-translation",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "pen",
          "short_description": "Translate and localize the text on finished app ad images in Lyra (statics, carousel cards, end cards, store screenshot captions) into other languages, keeping the design. Writes the copy for each market first (transcreation, glossary, length check), then picks the build per image - Lyra's Image Translation node, a Nano Banana Pro text-replace edit, a rebuild with localized screenshots, or a clean plate for the designer - and checks every letter. Use for \"translate this ad into German and Japanese\", \"localize the banner for Brazil\", \"the same static in 5 languages\", \"RU / ES / PT versions\", \"translate the carousel\", \"Arabic version\", \"translate the text on the creative\", or a winning static to roll out to new markets. Core image rules come from lyra-static-image-generation."
        },
        "name": "lyra-image-translation",
        "plugin_release_skill_id": "pluginrsk_6ae0fa8335088191859bf9fd253f80cf"
      },
      {
        "description": "Base skill for images in Lyra. Builds static ads and images for mobile apps end to end (concept, layout, on-image text, realism, model choice, references, sizes, languages) with a clear concept and layout, photo-real realism on Nano Banana Pro, de-slop and error handling. Use for \"a static ad for my app\", \"an image ad / banner / creative\", \"4 statics to test\", \"a carousel\", \"a realistic photo of…\", \"a character / persona image\", \"a product or phone shot\", \"an illustration in our style\", or a layout or reference to produce. Holds the core image rules the smaller lyra image skills point to.",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "lyra-static-image-generation",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "bolt",
          "short_description": "Base skill for images in Lyra. Builds static ads and images for mobile apps end to end (concept, layout, on-image text, realism, model choice, references, sizes, languages) with a clear concept and layout, photo-real realism on Nano Banana Pro, de-slop and error handling. Use for \"a static ad for my app\", \"an image ad / banner / creative\", \"4 statics to test\", \"a carousel\", \"a realistic photo of…\", \"a character / persona image\", \"a product or phone shot\", \"an illustration in our style\", or a layout or reference to produce. Holds the core image rules the smaller lyra image skills point to."
        },
        "name": "lyra-static-image-generation",
        "plugin_release_skill_id": "pluginrsk_6ae0fa84a5d48191ac9feb8610a69e9b"
      },
      {
        "description": "UGC style video ads for mobile apps in Lyra, a realistic person talking to the phone camera in a real place, with their own voice and a speech built from the audience's pain, usually opened with a hook from lyra-video-hooks. Use for \"a UGC video\", \"UGC ad for my app\", \"a creator / influencer style ad\", \"talking head\", \"testimonial style\", \"storytime\", \"car vlog\", \"street interview\", \"a skit\", \"day in my life\", \"honest review\", or a Lyra UGC or Talking Head template. Core video rules come from lyra-video-ad-generation.",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "lyra-ugc-video",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "bolt",
          "short_description": "UGC style video ads for mobile apps in Lyra, a realistic person talking to the phone camera in a real place, with their own voice and a speech built from the audience's pain, usually opened with a hook from lyra-video-hooks. Use for \"a UGC video\", \"UGC ad for my app\", \"a creator / influencer style ad\", \"talking head\", \"testimonial style\", \"storytime\", \"car vlog\", \"street interview\", \"a skit\", \"day in my life\", \"honest review\", or a Lyra UGC or Talking Head template. Core video rules come from lyra-video-ad-generation."
        },
        "name": "lyra-ugc-video",
        "plugin_release_skill_id": "pluginrsk_6ae0fa8222b481918653307c02d9e74b"
      },
      {
        "description": "App UI creatives in Lyra with every UI text kept exactly as in the user's screenshots - UI motion video ads (real app screens, buttons, cards, logo and icon in motion), store-style end cards with an install button, and App Store / Google Play screenshot sets with variants. Use for \"animate my app screens\", \"UI animation / motion design ad\", \"floating phone video\", \"show the app in the video\", \"end card with install button\", \"packshot like the App Store\", \"store screenshots\", \"screenshot set for Google Play\", or screenshots to bring to life. Core video rules come from lyra-video-ad-generation.",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "lyra-ui-motion-video",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "code",
          "short_description": "App UI creatives in Lyra with every UI text kept exactly as in the user's screenshots - UI motion video ads (real app screens, buttons, cards, logo and icon in motion), store-style end cards with an install button, and App Store / Google Play screenshot sets with variants. Use for \"animate my app screens\", \"UI animation / motion design ad\", \"floating phone video\", \"show the app in the video\", \"end card with install button\", \"packshot like the App Store\", \"store screenshots\", \"screenshot set for Google Play\", or screenshots to bring to life. Core video rules come from lyra-video-ad-generation."
        },
        "name": "lyra-ui-motion-video",
        "plugin_release_skill_id": "pluginrsk_6ae0fa82111c81919046d14ed3ee7215"
      },
      {
        "description": "Base skill for video ads in Lyra. Builds a mobile app video ad end to end (brief, script, scenes, keyframes, clips, voiceover, music, Video Editor assembly) with scene consistency, de-slop and error handling. Use for \"a 15-second video ad for my app\", \"a 30 s / 1 min ad\", \"a sequence of scenes\", \"stitch these clips\", or a script or storyboard to produce. Holds the core video rules the smaller lyra video skills point to.",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "lyra-video-ad-generation",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "bolt",
          "short_description": "Base skill for video ads in Lyra. Builds a mobile app video ad end to end (brief, script, scenes, keyframes, clips, voiceover, music, Video Editor assembly) with scene consistency, de-slop and error handling. Use for \"a 15-second video ad for my app\", \"a 30 s / 1 min ad\", \"a sequence of scenes\", \"stitch these clips\", or a script or storyboard to produce. Holds the core video rules the smaller lyra video skills point to."
        },
        "name": "lyra-video-ad-generation",
        "plugin_release_skill_id": "pluginrsk_6ae0fa84ae048191a84028fee1856c98"
      },
      {
        "description": "Hooks for mobile app video ads in Lyra, built from the Brand Kit and the audience's real pains, then turned into finished videos for an A/B test. Use for \"hooks for my app\", \"4 hook variants\", \"write hooks / a hook bank\", \"a visual hook\", \"a catchy / brainrot hook\", \"hook multiplier\", \"test new openings on this ad\", \"the hook is weak / hook rate dropped\", \"a stronger first 3 seconds\", or a Lyra Hook template. Core video rules come from lyra-video-ad-generation.",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "lyra-video-hooks",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "bolt",
          "short_description": "Hooks for mobile app video ads in Lyra, built from the Brand Kit and the audience's real pains, then turned into finished videos for an A/B test. Use for \"hooks for my app\", \"4 hook variants\", \"write hooks / a hook bank\", \"a visual hook\", \"a catchy / brainrot hook\", \"hook multiplier\", \"test new openings on this ad\", \"the hook is weak / hook rate dropped\", \"a stronger first 3 seconds\", or a Lyra Hook template. Core video rules come from lyra-video-ad-generation."
        },
        "name": "lyra-video-hooks",
        "plugin_release_skill_id": "pluginrsk_6ae0fa83c35881918a62cd9e2661dc65"
      }
    ],
    "version": "0.4.2"
  },
  "scope": "GLOBAL",
  "share_url": "https://chatgpt.com/plugins/plugin_asdk_app_6adf1d066ee48191a687af733ab287a3?open_in_app",
  "status": "ENABLED"
}

SHA-256 of public snapshot: c1345e7b78ded04fafa94be2e9a9bc3a15a361ee9a666902233711a0d884c518