scenario-mai-image — скилл для Claude Code: генерация и правка
Скилл для работы с моделями Microsoft MAI Image на Scenario через MCP: генерация по тексту и правка изображений по инструкции.
npx skills add scenario-labs/skills --skill scenario-mai-image -a claude-codeЧто делает scenario-mai-image
Скилл описывает четыре модели семейства MAI Image 2.5: генераторы 2.5 и 2.5 Pro, а также редакторы 2.5 Edit и 2.5 Pro Edit. Главная их особенность — типографика: надписи внутри картинки возвращаются читаемыми и стоят там, куда их поставил промпт. Поэтому скилл берут для постеров, упаковки, обложек и рекламы, где в кадре есть настоящий текст.
Промпт здесь пишут прозой, а не списком тегов: модель разбирает сюжет, композицию, материалы, свет и настроение примерно в этом порядке. Точный текст в кадре оборачивайте в кавычки, иначе он вернётся пересказанным или искажённым, и давайте каждому блоку роль, стиль и место. Размер задаётся только полем aspectRatio, ширина, высота, seed и негативный промпт отсутствуют. На момент написания скилла рендер текста был настроен под английский, а результат выходил около 1K — для печати планируйте апскейл.
Редакторы принимают одно исходное изображение и обычную инструкцию, но поле источника у них разное: Edit ждёт referenceImages с ровно одним id в массиве, Pro Edit — image одним файлом. Перенос блока параметров между ними ломает запуск, так что при переключении перечитывайте схему. Стройте инструкцию как «что остаётся неизменным, затем одно изменение» с точным названием элемента и его нового состояния, а несколько правок делайте цепочкой проходов. Один публичный результат в арене правки был общим у обеих моделей, при этом ассет Pro Edit стоил примерно вчетверо дороже ассета Edit — прогоните обе через dry_run и начните с Edit.
Какие задачи решает
- сгенерировать постер с читаемым заголовком прямо в кадре
- сделать обложку журнала или упаковку с настоящим текстом
- заменить надпись на вывеске, сохранив шрифт и цвет
- убрать или заменить объект на фото по текстовой инструкции
- поменять фон или свет, не потеряв исходный сюжет
Примеры запросов агенту
- Сгенерируй постер кампании через scenario-mai-image: фотографичный кадр, заголовок 'ASCEND' сверху, соотношение 2:3, четыре варианта.
- Через scenario-mai-image поменяй только заголовок на 'ASCEND HIGHER', шрифт, цвет и место оставь как были.
- Прогони обе модели правки через dry_run и покажи, сколько будет стоить каждый вариант.
Как установить scenario-mai-image
1Через Skills CLI (Vercel)
npx skills add scenario-labs/skills --skill scenario-mai-image -a claude-code2Вручную: положить файлы
~/.claude/skills/scenario-mai-image/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/scenario-mai-image/
1Через Skills CLI (Vercel)
npx skills add scenario-labs/skills --skill scenario-mai-image -a codex2Вручную: положить файлы
.agents/skills/scenario-mai-image/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add scenario-labs/skills --skill scenario-mai-image -a cursor2Вручную: положить файлы
.cursor/skills/scenario-mai-image/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install scenario-labs/skills scenario-mai-image2Вручную: положить файлы
.github/skills/scenario-mai-image/SKILL.md1Через Skills CLI (Vercel)
npx skills add scenario-labs/skills --skill scenario-mai-image -a gemini-cli2Командой платформы
gemini skills install https://github.com/scenario-labs/skills --path skills/scenario-mai-imageВручную: положить файлы
.devin/skills/scenario-mai-image/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add scenario-labs/skills --skill scenario-mai-image -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора68
Похожие
Рядом в теме «ИИ и ML»
Всё по теме «ИИ и ML» →Вопросы о scenario-mai-image
Как установить scenario-mai-image в Claude?
Выполните npx skills add scenario-labs/skills --skill scenario-mai-image -a claude-code. Файл скилла окажется в ~/.claude/skills/scenario-mai-image/SKILL.md.
Что делает scenario-mai-image?
Описывает работу с моделями Microsoft MAI Image 2.5 на Scenario через MCP: генерацию по тексту и правку изображений по инструкции. Отдельно разбирает, как добиться читаемых надписей внутри картинки.
Чем отличается 2.5 Edit от 2.5 Pro Edit?
Поле исходного изображения: Edit принимает referenceImages с ровно одним id в массиве, Pro Edit — image одним файлом. Ассет Pro Edit стоил примерно вчетверо дороже, поэтому скилл советует начать с Edit.
Исходный текст
SKILL.md · MIT
---
name: scenario-mai-image
description: "Use when generating or editing images with Microsoft MAI Image models on Scenario via MCP: photoreal or stylized text-to-image with legible in-image typography, posters, packaging, magazine covers, ads, key art, or instruction-based editing such as text swaps, recoloring, object removal or replacement, background swaps, lighting changes, and full restyles. Keywords: MAI Image 2.5, 2.5 Pro, 2.5 Edit, 2.5 Pro Edit, Microsoft, txt2img, img2img, typography, text rendering, image edit."
license: MIT
---
# Scenario MAI Image
## Overview
MAI Image 2.5, Microsoft's image family on Scenario, splits into generation members (2.5, 2.5 Pro)
and instruction editors (2.5 Edit, 2.5 Pro Edit). The family trait is typography: in-image
headlines, labels, and taglines come back legible and placed where the prompt put them: the pick for
posters, packaging, covers, and key art that carry real copy. Discover members with `search` and
treat `model_schema_get` as the contract: the four agree on almost every field and disagree on the
one that carries the source image.
Connection and the core loop: see the `scenario` skill in this repo; model-agnostic image work
(sizing families, masks, upscales): the `scenario-image` skill. If a sibling skill named here is
missing from your available skills, ask the user to install it
(`npx skills add scenario-labs/skills --skill <name>`); unattended, proceed from tool schemas and
flag the gap.
## Quick reference
At authoring time (names from the live schema):
| Member | Makes | Source input | Ratios |
| ------------ | ------- | ------------------------------- | -------------- |
| 2.5 | txt2img | none | 11, incl. 21:9 |
| 2.5 Pro | txt2img | none | 8 |
| 2.5 Edit | img2img | `referenceImages`, array of one | 8 |
| 2.5 Pro Edit | img2img | `image`, single file | 8 |
All four share `prompt` (4096 characters on 2.5 and Edit, 5000 on the Pro pair), `aspectRatio` (an
enum defaulting to `auto`), and `numOutputs` (1 to 4, each added image adds cost). No width, height,
seed, negative prompt, or mask field exists: `aspectRatio` is the only sizing control, and edits
target elements by naming them in prose. On the generators `auto` picks a ratio from the prompt; on
the editors it matches the source, so leave it there unless re-framing is the point.
## Typography is the lever
Write prose sentences, not tag lists: the family reasons over subject, composition, materials,
lighting, and mood in that rough order. Wrap exact in-image copy in quotes so it renders verbatim,
and give each text block a role, a style, and a place ("the headline 'GAME DAY' in bold condensed
type across the top third"). Unquoted or vague copy comes back paraphrased or mangled, and many
small text blocks compete, so group them. At authoring time text rendering was tuned for English and
outputs landed near 1K, so plan a downstream upscale for print or hero use. Steering is
positive-only: explore with `numOutputs` 2 to 4 and refine the sentence rather than hunting for a
seed.
## Editing: preserve first, one change
Both editors take one source image and a plain instruction, under different fields: Edit wants
`referenceImages` with exactly one asset id in an array, Pro Edit wants `image` as a single file.
Porting a parameter block between them breaks the run, so re-read the schema when switching.
Structure the prompt as what must stay unchanged, then one change, naming the exact element and its
exact new state, with replacement copy in quotes ("change the sign to 'OPEN 24/7', same font and
color"). Chain passes for several changes; edits hold identity well across iterations. The two
shared one public image-edit arena entry (top 3 at authoring time) while a Pro Edit asset cost about
four times an Edit asset, so `dry_run` both and start with Edit.
## Worked example: a campaign poster, then a copy swap
1. `search` with `target="models"`, `query="mai image"`, `public=true`. Note the generation and edit
hits, e.g. `model_microsoft-mai-image-2-5-pro` and `model_microsoft-mai-image-2-5-edit` (live
hits at authoring time: re-discover each session).
2. `model_schema_get` on the generation pick: ratio list, prompt cap, defaults.
3. `model_run` with `dry_run=true` and
`parameters={"prompt": "A photorealistic poster of a climber on a granite wall at dawn, warm rim light, the headline 'ASCEND' in tall condensed sans-serif across the top, a small tagline 'Hold your line' lower left, editorial sports aesthetic.", "aspectRatio": "2:3", "numOutputs": 4}`.
`numOutputs` moves cost, so re-estimate after changing it.
4. Repeat with `wait=false`, then `jobs_wait` with the returned job id, re-called with
`pending_job_ids` on timeout, never a second `model_run`.
5. `asset_display` the four outputs and keep one asset id.
6. `model_schema_get` on the edit pick, then `model_run` with
`parameters={"referenceImages": ["asset_x"], "prompt": "Keep the climber, lighting, and layout unchanged. Change only the headline to 'ASCEND HIGHER', same font, color, and placement."}`;
`jobs_wait`, then `asset_display`.
## Common mistakes
- Carrying one editor's source field to the other: `referenceImages` (array of exactly one) and
`image` (single file) are member-specific shapes.
- Leaving in-image copy unquoted: only quoted text renders verbatim.
- Stacking several edits in one instruction: one change per pass, then chain.
- Sending pixel sizes or a ratio the member lacks: `aspectRatio` is an enum and the lists differ
(21:9, 5:4, and 4:5 lived on one member at authoring time).
- Re-running for a pixel-identical result: no seed exists; keep the winning asset and edit it
forward.
- Shipping the 1K output to print: upscale downstream (see the `scenario-image` skill).
© scenario-labs · MIT · scenario-labs/skills