← Files OrisuARCHIVED FILE
plugin.json
8.88 KB · Nov 6, 2026 · 06:41 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "app-6a608e436adc8191affb546011f744cf",
"version": "2.0.0",
"description": "Orisu uses photos of your own products and your brand references to make store images, ad creatives and short videos, which you review and refine in chat. It also makes voiceovers, music, sound effects and captions, cleans up and resizes images, and can run the workflows and apps you already have in Orisu.",
"author": {
"name": "Orisu",
"email": "hello@orisu.ai",
"url": "https://orisu.ai"
},
"homepage": "https://orisu.ai",
"extensions": {
"com.openai": {
"interface": {
"displayName": "Orisu",
"shortDescription": "Product photos, ads and videos",
"longDescription": "Use a photo of your product and your brand references to guide store images, ad creatives and short videos, then review and refine them in chat. Orisu works from your real product photo rather than describing a new product, and each recipe checks the product, text and styling in every result so you can ask for fixes. Make a white-background packshot, lifestyle scenes and close-ups for a product page; a matching set of feed, portrait and story ads with your headline; new scenes, light or seasonal styling around the same product; and clean cutouts, removed distractions and larger prints. Resize a finished ad for other placements, try several creative directions side by side, or animate a product photo into a short vertical clip. Add captions to a video, a voiceover from your script, a music bed or sound effects, and thumbnails for your videos. Orisu can read your brand's colors, tone and guidelines to guide the styling, and it can run the saved workflows and apps you already have in Orisu.",
"developerName": "Orisu",
"category": "Creativity",
"capabilities": [
"Product photos",
"Ad creatives",
"Product video",
"Scene styling",
"Image cleanup",
"Video captions",
"Voiceovers",
"Music and sound effects",
"Brand knowledge"
],
"websiteURL": "https://orisu.ai",
"supportURL": "https://orisu.ai/demo",
"privacyPolicyURL": "https://orisu.ai/privacy",
"termsOfServiceURL": "https://orisu.ai/terms",
"brandColor": "#C4823A",
"composerIcon": "./assets/icon.png",
"logo": "./assets/logo.png",
"defaultPrompt": [
"Make store photos from this product image",
"Create three coordinated ad placements for this product",
"Animate this product photo into a short vertical clip"
]
},
"review": {
"test_cases": {
"positive": [
{
"description": "Create e-commerce product photos from a supplied product photo.",
"prompt": "Here's a photo of my ceramic mug. Make a white-background packshot and a lifestyle photo for my Shopify product page.",
"file_attachment_urls": [
"https://orisu.ai/review-assets/ceramic-mug.jpg"
],
"tools_triggered": "upload_asset, edit_image",
"expected_behavior": "Stores the photo, then edits it twice, once into a 1:1 packshot on a pure white background and once into a 4:5 lifestyle scene, keeping the same mug, checking the cost before each, and shows both images in the conversation."
},
{
"description": "Create a coordinated ad set from a product photo and an offer.",
"prompt": "Make a square feed ad and a 9:16 story ad for this mug with the headline \"Back in stock\".",
"file_attachment_urls": [
"https://orisu.ai/review-assets/ceramic-mug.jpg"
],
"tools_triggered": "upload_asset, edit_image",
"expected_behavior": "Stores the photo, makes a 1:1 ad and a 9:16 ad from it with the headline \"Back in stock\" and no other offers or claims, checking the cost first, and shows both ads in the conversation."
},
{
"description": "Animate a product photo into a short vertical clip.",
"prompt": "Turn this mug photo into a short vertical video with a slow push-in and soft morning light.",
"file_attachment_urls": [
"https://orisu.ai/review-assets/ceramic-mug.jpg"
],
"tools_triggered": "upload_asset, generate_video",
"expected_behavior": "Stores the photo and generates one 9:16 clip that starts from it, checking the cost first, then shows the clip or reports that it is still rendering and follows it with wait_for_run until it finishes."
},
{
"description": "Remove the background from a supplied photo.",
"prompt": "Remove the background from this product photo so I can put it on my own banner.",
"file_attachment_urls": [
"https://orisu.ai/review-assets/ceramic-mug.jpg"
],
"tools_triggered": "upload_asset, remove_background",
"expected_behavior": "Stores the photo, runs background removal on it once, and shows the cutout image in the conversation."
},
{
"description": "Make a voiceover from a script.",
"prompt": "Make a voiceover that says: \"Every mug is thrown by hand in our studio, one at a time.\" Use a warm British male voice.",
"tools_triggered": "generate_speech",
"expected_behavior": "Runs one text-to-speech generation with a British male voice from the voice list (for example George or Daniel), checking the cost first, and returns the audio file."
},
{
"description": "Reframe a finished image for a story placement.",
"prompt": "Make a 9:16 story version of this photo without cropping out the mug.",
"file_attachment_urls": [
"https://orisu.ai/review-assets/ceramic-mug.jpg"
],
"tools_triggered": "upload_asset, change_aspect_ratio",
"expected_behavior": "Stores the photo and reframes it to 9:16 by extending the scene around it, checking the cost first, and shows the result with the whole mug visible."
},
{
"description": "Write product copy in the brand's voice.",
"prompt": "What tone does my brand use? Write a two-sentence product description for a ceramic mug in that tone.",
"tools_triggered": "query_brain, generate_text",
"expected_behavior": "Looks up the brand's tone in the workspace's brand knowledge and says plainly if none is recorded, then generates a two-sentence description that follows the tone it found, or a neutral tone if none was found."
},
{
"description": "Report on recent runs.",
"prompt": "Did my most recent Orisu run finish? If it failed, tell me why.",
"tools_triggered": "list_runs, get_run",
"expected_behavior": "Finds the most recent run, reports its status, and for a failed run gives the error and the step that failed. If there are no runs yet, it says so."
}
],
"negative": [
{
"description": "Do not trigger for a general creative-writing request.",
"prompt": "Write a short poem about a sunrise over the ocean.",
"tools_triggered": null,
"expected_behavior": "The app should not be invoked because the request does not ask to generate media or work with the user's Orisu workspace."
},
{
"description": "Do not trigger for unrelated calendar management.",
"prompt": "Move tomorrow's team meeting to 3 PM and invite Sam.",
"tools_triggered": null,
"expected_behavior": "The app should not be invoked because it does not manage calendars or invitations."
},
{
"description": "Do not treat Orisu as a direct social-media publisher.",
"prompt": "Post this caption directly to my Instagram account right now.",
"tools_triggered": null,
"expected_behavior": "The app should not be invoked because its tools create and edit images, video and audio but do not publish social posts."
},
{
"description": "Do not trigger for a text-only summary request.",
"prompt": "Summarize the main points of the GDPR in five bullet points.",
"tools_triggered": null,
"expected_behavior": "The app should not be invoked because the request asks for a written summary and does not involve creating or editing images, video or audio or the user's Orisu workspace."
}
]
},
"commerce": false
},
"apps": "./.app.json"
}
}
}
SHA-256: 31ffba8c409d07e9feb3ddacb46b456f49b1fa69ebd9e23a75f69adf58e0ecdd