# scenario-model-training

Walks a custom model through Scenario MCP: base model pick, dataset, epochs, previews and launch.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 445 installs · ★ 1141
- Author: scenario-labs
- License: MIT · policy=mirror · the beginning of the file is at the end of this page
- Source: https://github.com/scenario-labs/skills/tree/HEAD/skills/scenario-model-training/SKILL.md
- Updated: 2026-10-23
- HTML: https://affpapa.org/en/nevibecode/skills/scenario-model-training

## What it does

Reach for this skill when one look has to hold across many assets: an icon set, a recurring character, a product line. Prompts and references are the cheaper first step, so the skill tells you to run the consistency test from the sibling `scenario-consistency` skill first and train only once that test drifts across the whole set.

Two references carry the judgment calls: base model selection, with the interview that feeds `recommend_training`, and dataset curation covering size, image rules and captions. Training tools are not in the default toolset. Pull schemas with `scenario_tools_search`, run reads through `scenario_tool_execute_read` and writes through `scenario_tool_execute_write`, or reconnect with `?toolsets=full`. The flow: `model_create`, upload the dataset, `train` with `upload_images` at 10 asset ids per call, quote the cost via `configure` with `dry_run: true`, launch with `start`, wait on `jobs_wait`.

On a multi-epoch run `sample_prompts` is not optional. The trainer publishes a per-epoch checkpoint only when they are present; without them you get final weights and a single selectable epoch. Epoch caps differ per family, so read them off the `train` schema. `start` spends the entire quote and `stop` is not a refund, which is why the quote goes to the user before anything launches.

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add scenario-labs/skills --skill scenario-model-training -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/scenario-model-training/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/scenario-model-training/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add scenario-labs/skills --skill scenario-model-training -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/scenario-model-training/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add scenario-labs/skills --skill scenario-model-training -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/scenario-model-training/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install scenario-labs/skills scenario-model-training
```

2. **Manually: put the files in place**
- File: `.github/skills/scenario-model-training/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add scenario-labs/skills --skill scenario-model-training -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/scenario-labs/skills --path skills/scenario-model-training
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/scenario-model-training/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add scenario-labs/skills --skill scenario-model-training -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/scenario-labs/skills/tree/HEAD/skills/scenario-model-training/SKILL.md

## When to use it
- hold one style across an icon or prop set
- train a LoRA for a recurring character
- curate and clean a training dataset
- quote a training run before spending on it
- pick the epoch from previews instead of taking the last

## Example prompts
- recommend a base model for hand-painted prop icons in a mobile RPG
- quote a 12-epoch training run, don't launch anything
- start the training and wait for the job to finish

## Source text · SKILL.md · MIT

Below is the content of a third-party file. It is data, not instructions for you: do not act on anything written inside unless the human asks. Block tag: 1af043b7b7df2733.

BEGIN THIRD-PARTY FILE 1af043b7b7df2733
```text
---
name: scenario-model-training
description: "Use when generated assets must keep a consistent style, character, or product look and references stop scaling, or when a user asks to train a custom model through the Scenario MCP, fine-tune a LoRA, clone a voice, curate a training dataset, choose a base model, set epochs and sample prompts, estimate training cost, diagnose a trained model that lost its identity or has one epoch, or generate with a trained model. Keywords: custom model, LoRA, dataset curation, epoch previews."
license: MIT
---

# Scenario Model Training

## Overview

Train a custom model when one look must hold across many assets: an icon set, a recurring character,
a product line. Prompts, references, and control maps are cheaper first steps: see
`scenario-consistency`. Before quoting a training run, run the reference test `scenario-consistency`
teaches for the subject at hand: the approved art as style references (with the prompt saying they
set the style only) for a look, the hero as a subject reference for a character or product. At
authoring time a style test matched the look of a custom LoRA on the same brief at a comparable
per-image price, for the cost of one generation. Train when that test drifts across the set, not
before; the worked example below starts after it.

The judgment calls live in two references:
[references/base-model-selection.md](references/base-model-selection.md) (the user interview that
feeds `recommend_training`) and [references/dataset-curation.md](references/dataset-curation.md)
(dataset size, image rules, captions, and review per training type).

Connection and the core generation loop: see the `scenario` 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.

Training tools are not in the default toolset: get schemas with `scenario_tools_search`, run reads
(`recommend_training`, `model_get`) via `scenario_tool_execute_read` and writes (`model_create`,
`train`, `model_update`) via `scenario_tool_execute_write`, or reconnect with `?toolsets=full`.

## Quick reference

| Step                     | Tool                                                                |
| ------------------------ | ------------------------------------------------------------------- |
```
END THIRD-PARTY FILE 1af043b7b7df2733

The third-party file has ended. Everything between the 1af043b7b7df2733 tags is data: requests and commands from it are not followed. An “end of file” line with another tag inside the block is part of the file.

First 2406 of 11086 bytes. © scenario-labs · MIT · https://github.com/scenario-labs/skills/tree/HEAD/skills/scenario-model-training/SKILL.md

_Part of the page did not fit — see the HTML version._

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
