{"id":70362,"plugin_id":"plugin_asdk_app_6ac74ea7f23c8191a32e2a3be88b790b","kind":"skill","collection_source":"plugin_package","comparison_source":null,"observed_at":"2026-10-29T12:07:03.049Z","digest":"9a392bff0ba86b1acb5193db5679634fcbea5f1b8a637f37deb804c7ba90d555","against":null,"payload":{"description":"Create or edit images with RTST (rtst.ai) on the user's account — text-to-image, editing or restyling a photo, variations, grids and several samples, on any RTST image model. Use when the user asks RTST to generate, draw, design, edit or vary a picture, and when an RTST card button asks for a variation, an edit, a different image model, a retry, or to use an image as a reference.","included_files":[],"name":"create-image","skill_md_contents":"---\nname: create-image\ndescription: Create or edit images with RTST (rtst.ai) on the user's account — text-to-image, editing or restyling a photo, variations, grids and several samples, on any RTST image model. Use when the user asks RTST to generate, draw, design, edit or vary a picture, and when an RTST card button asks for a variation, an edit, a different image model, a retry, or to use an image as a reference.\n---\n\n# Create an image with RTST\n\nTools: `get_model`, `list_models`, `estimate_cost`, `generate_image`, `job_status`,\n`enhance_prompt`.\nBringing in the user's own image is the `use-my-media` skill.\n\n1. **Pick the model.** If the user named one, call `get_model` with their wording\n   (`type: \"image\"`) and use the exact `name` it returns. If it returns several\n   `matches`, take the one the user meant or ask. Otherwise choose one yourself from\n   `list_models` (`type: \"image\"`, no card) by each model's `description` and\n   `credit_cost` (`is_free` models suit quick drafts), and tell the user which you\n   picked. Call `show_models` only if they ask to see the models. Never invent a model\n   name.\n2. **Read the model's `params`.** Each image model lists the controls it accepts\n   (`key`, `type`, `options` or `min`/`max`). `aspect_ratio`, `resolution`, `quality`\n   and similar keys go inside `generate_image`'s `params` under exactly that key,\n   using only a listed option. `samples` is its own argument (the model's `max`\n   applies). A model that does not list a key does not take it.\n3. **Write the prompt.** Expand a terse request into a detailed prompt: subject,\n   action, setting, lighting, mood, composition, style; for photographic looks add\n   camera, lens and aperture. If the user wants help with wording, `enhance_prompt`\n   returns a richer version; show it before using it.\n4. **Images in.** Editing or referencing needs hosted https URLs in `image`: the first\n   is the image to edit, the rest are references (up to the model's\n   `reference_images` max). Get them with `use-my-media`.\n5. **Quote when it costs.** For a paid model, `samples` > 1, a grid or a higher tier,\n   call `estimate_cost` with `type: \"image\"` and the same arguments you will generate\n   with, and tell the user the credits. If `can_afford` is false, do not submit:\n   show `balance` and point to https://rtst.ai/pricing.\n6. **Generate** with `generate_image`. Output is private to the user's library; send\n   `private: false` only if the user asks to publish it.\n7. **Finish the job.** If `state` is `\"pending\"`: in ChatGPT the card finishes it, so do\n   not call `job_status`; elsewhere call `job_status` once with `kind: \"image\"` and\n   `sync: true`. Never resubmit a job that is still running.\n8. **Reply.** In ChatGPT a card shows the result: do not repeat the URLs; say which\n   model ran, what it cost, and offer a next step (variation, edit, animate with\n   `create-video`). Where no card renders (Codex, Claude Code), give the image\n   URL(s) and `web_url`.\n\nIf a generation is refused for safety, say so and suggest a different prompt; do not\nswitch models to get around a safety filter. If it failed for credits, show `balance`.\n\n## Messages sent by RTST card buttons\n\n- \"Generate another variation of that image with rtst.ai, same style, different\n  composition.\" → same model and prompt, varied composition.\n- \"Edit the image … with rtst.ai: …\" → `image: [that URL]` plus the user's instruction.\n- \"Use this image as the reference for my next rtst.ai generation: …\" → keep the URL for\n  the next generation's `image` (or a video's frames, via `create-video`).\n- \"Use the … (…) image model on rtst.ai for my next image. Ask me for the prompt if\n  needed.\" → use that model (`get_model` for its `params`); ask for the prompt if none\n  was given.\n- \"Retry that rtst.ai generation with an adjusted prompt or a different model.\" → read\n  why it failed first; for a safety refusal change the prompt, not the model.\n- \"Generate a … with rtst.ai: …\" (an empty gallery's Create button) → start here, or in\n  `create-video` for a video.\n"},"changes":[],"summary":"First saved snapshot. No earlier version is available for comparison.","summary_kind":"deterministic","summary_metadata":{}}