
Wires --sref, --oref, --sw, --ow, --sv so your agent can keep consistent style and characters across a whole image set — instead of generating 40 mismatched one-offs.
Install command
npm install @scopeful/midjourney-style-refsDownload skill file
midjourney-style-refs.md
9 KB
Fetch via the Scopeful MCP (any client)
Once your agent is connected to the Scopeful MCP, it can load this skill on demand, no install required:
get_skill('midjourney-style-refs')Midjourney has the strongest style-consistency toolkit of any consumer image generator. Most users never touch it because the parameter names are obscure (--sref, --oref, --sw, --ow, --sv) and the docs are scattered. This skill consolidates the workflow so your agent can deliver a coherent image set on the first try instead of generating 40 one-offs.
There are three tools, and they do different things. Mixing them up is the #1 mistake.
| Tool | Parameter | What it carries | What it does NOT carry |
|---|---|---|---|
| Style Reference | --sref URL or --sref CODE | Colors, medium, texture, lighting, "vibe" | Subjects, characters, composition |
| Omni Reference (V7+) | --oref URL | A specific person, object, vehicle, or creature | Style, lighting, composition |
| Image Prompt (legacy) | URL at start of prompt + --iw N | A blend of content and style | Fine-grained control |
Use --sref when the user wants a look. Use --oref when the user wants a thing in the picture. Use both together when they want both. Image prompts are blunt, reach for them only when neither of the above fits.
--sref)Syntax in Discord: prompt text --sref <URL_or_CODE>
On midjourney.com: drag the image into the Style Reference slot in the Imagine bar.
Three input forms:
--sref https://example.com/inspiration.jpg. The image must already be hosted online; if the user has a local file, tell them to host it on Discord first.--sref 1234567890. Numeric codes from MJ's internal style library. Browse them on midjourney.com/explore under the Styles tab.--sref random. MJ picks a style code and substitutes it in. Pair with --repeat to fan out across many styles.Combine multiple refs with spaces: --sref URL1 URL2 URL3. Combine with weights to bias toward one: --sref URL1::2 URL2::1.
--sw)--sw N controls how strongly the reference influences output. Range 0–1000, default 100.
--sw 50. light influence, prompt text leads--sw 100. balanced (default)--sw 400. heavy influence, reference dominates--sw 1000. extreme, prompt text barely mattersThe default is usually wrong. Try --sw 200 first when you want a clear style transfer.
--sw is not compatible with Moodboards (see Personalization profiles instead).
--sv)The --sref algorithm has multiple versions. For V7:
--sv 6. default, current--sv 4. old V7 model from before June 2025 (use if reproducing old looks)For V6: --sv 1 through --sv 4 exist with different aesthetics. Don't tell the user to use these unless they ask, defaults are fine.
--sref. the trapThe biggest mistake is telling MJ what to do with the reference. Don't do this:
❌ the look of this image but as a dog --sref URL
❌ copy this style and make a bunny --sref URL
The prompt text should describe the content you want, not the relationship to the reference:
✅ detailed portrait of a golden retriever --sref URL
✅ ballpoint pen sketch of a bunny --sref URL
If the user gives you a reference and asks "make a dog in this style," translate it before generating: drop the meta-language, keep the subject.
--oref)Syntax: prompt text --oref <URL>
Only one image, you can't stack --oref URLs.
Puts a specific person, character, or object into the generated image. The reference image is what you want to appear; the prompt text describes the scene around it.
illustration of a young woman with short gray hair drawn by a comic book artist, sitting in a 1980s diner --oref https://example.com/character.jpg --ow 100
--ow)--ow N controls how faithfully the reference is reproduced. Range 1–1000, default 100.
--ow 50–100. loose interpretation; MJ will alter details to fit the scene--ow 200–400. moderate fidelity; use this for character consistency across a series--ow 500+. high fidelity but unpredictable unless paired with high --stylize or --expKeep --ow under 400 unless the user specifically asks for near-photographic accuracy.
--oref won't work, they need to switch off --draft first.--oref result, the user must open it in the midjourney.com Editor and remove the --oref + --ow params.--oref pulls hard toward the reference's style.--sref and --orefYes, this works, and it's the magic move. The combo lets you:
--oref) into a specific aesthetic (--sref)woman in a green coat walking through fog at night, cinematic, moody --sref STYLE_CODE --oref CHARACTER_URL --sw 200 --ow 200 --ar 16:9 --v 7
Tip: lower both weights (--sw 150 --ow 200) when combining, because they compete for influence.
--oref with their reference at --ow 200.--oref for all subsequent shots.--ar, keep --oref URL --ow 200.--sref of the first generated image to lock both.--sref with --sw 200.--sref + --sw.--sref random.--sref CODE for future use.--repeat 4 if the user has Standard+ plan to fan out in fewer clicks.--oref to lock the character.--sref codes between shots to change mood (warm/cool, soft/hard, photo/illustration).--ow 200 constant so character stability doesn't change with mood.| Setup | Cost per image job |
|---|---|
| Base V7 image | 1 GPU-min |
--sref only | 1 GPU-min (no surcharge) |
--oref (any weight) | 2 GPU-min (2× regular) |
--sref + --oref | 2 GPU-min |
If the user is on Basic ($10/mo, ~200 image jobs/month), 50 Omni Reference shots = 100 GPU-min = half the month's budget. Push them toward Standard ($30/mo) if they're doing character work seriously.
midjourney-v7-prompts skill, save the GPU.--sref doesn't preserve text, and --oref won't put a logo in the right place. Suggest Photoshop compositing.--sref makes everything moody and editorial. Use plain V7 with --raw --stylize 50.For consistency-driven requests, return:
--sref / --oref URLs)Example:
**Locked refs (use across all shots):**
- Character: --oref <USER_CHARACTER_URL> --ow 200
- Style: --sref <USER_STYLE_URL> --sw 200
**Shot 1, diner interior**
> woman in a green coat sitting at a diner counter, neon outside, rain on windows --oref ... --sref ... --ow 200 --sw 200 --ar 16:9 --v 7
**Shot 2, exterior street**
> woman in a green coat walking past closed shops, wet pavement, sodium streetlight --oref ... --sref ... --ow 200 --sw 200 --ar 16:9 --v 7
**Shot 3, close-up portrait**
...
Estimated cost: 6 shots × 2 GPU-min (Omni Reference) = 12 GPU-min ≈ $0.40 on Standard plan.