Hugging Face LLM Trainer
huggingface/skills
Trains or fine-tunes language and vision models with TRL or Unsloth on Hugging Face Jobs cloud GPUs, then converts the results to GGUF.
A skill your agent uses 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…
$ npx skills add scenario-labs/skills --skill scenario-model-training -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install scenario-labs/skills scenario-model-training --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/scenario-model-training .claude/skills/scenario-model-training && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "scenario-model-training" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/scenario-model-training into .claude/skills/scenario-model-training/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-model-training", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/scenario-labs/skills/tree/main/skills/scenario-model-trainingType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add scenario-labs/skills --skill scenario-model-training -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install scenario-labs/skills scenario-model-training --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/scenario-model-training .agents/skills/scenario-model-training && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "scenario-model-training" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/scenario-model-training into .agents/skills/scenario-model-training/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-model-training", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add scenario-labs/skills --skill scenario-model-training -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install scenario-labs/skills scenario-model-training --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/scenario-model-training .cursor/skills/scenario-model-training && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "scenario-model-training" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/scenario-model-training into .cursor/skills/scenario-model-training/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-model-training", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/scenario-labs/skills.git --path skills/scenario-model-training--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add scenario-labs/skills --skill scenario-model-training -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install scenario-labs/skills scenario-model-training --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/scenario-model-training .gemini/skills/scenario-model-training && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "scenario-model-training" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/scenario-model-training into .gemini/skills/scenario-model-training/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-model-training", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install scenario-labs/skills scenario-model-trainingInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add scenario-labs/skills --skill scenario-model-training -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/scenario-model-training .github/skills/scenario-model-training && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "scenario-model-training" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/scenario-model-training into .github/skills/scenario-model-training/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-model-training", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add scenario-labs/skills --skill scenario-model-training -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install scenario-labs/skills scenario-model-training --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/scenario-model-training .opencode/skills/scenario-model-training && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "scenario-model-training" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/scenario-model-training into .opencode/skills/scenario-model-training/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-model-training", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
scenario-model-trainingA skill your agent uses 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…
Scenario Model Training is an agent skill from scenario-labs/skills. 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.
Its SKILL.md is about 2.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including reference files (for example `references/base-model-selection.md` and `references/dataset-curation.md`).
It sits in AI & LLM Engineering, covering Fine-tuning. It works with Model Context Protocol. The repository describes itself as: Get production-ready images, video, audio, and 3D from any AI agent: skills that pick the right model, price before spending, and keep characters and brands consistent through… The licence is MIT.
8 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit f6f8ab7. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
npxFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Scenario Model Training loads about 2.7k tokens when it runs, and up to ~6k if it reads all its reference files. Until then it costs about 126 tokens; SKILL.md has 1,441 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from scenario-labs/skills at commit f6f8ab7, republished under its MIT licence (© scenario-labs). 1,441 words, ~2,730 tokens.
.claude/skills/scenario-model-training/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.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 (the user interview that feeds recommend_training) and 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.
| Step | Tool |
|---|---|
| Pick a base architecture | recommend_training (LLM-powered, cost-bearing) |
| Create the model shell | model_create (data.type from the recommendation) |
| Upload the dataset | upload_asset + upload_asset_complete |
| Attach training images | train action upload_images, 10 asset ids per call |
| Estimate cost | train action configure with dry_run: true (a quote, no job) |
| Preview every epoch | config.sample_prompts, at least one on any multi-epoch run |
| Launch | train action start, with the same config or bare for defaults |
| Wait | jobs_wait with the returned job id |
| Generate | model_schema_get on YOUR model id, then model_run |
| Manage | models_list, model_get, model_update |
recommend_training with prompt: "hand-painted prop icons for a mobile RPG", modality: "image", dataset_shape: "single_images", plus subject, style, and priority from the interview. Returns a recommended variant, alternatives, and dataset_requirements (shape and size bounds). Cost-bearing: call it once with clear intent.model_create with data: {"name": "rpg-prop-icons", "type": "<type from step 1>"}. Note the returned model id.dataset_requirements from step 1, then upload each file with upload_asset plus upload_asset_complete (see the scenario skill) and collect the asset ids. For image_pairs datasets, map pairs with train action set_pairs.train with action: "upload_images", model_id, images: [<asset ids>], at most 10 per call (see Dataset limits); it changes data, so pass team_id and project_id (scope: the scenario skill).train with action: "configure", config: {"epochs": 12, "sample_prompts": ["a rusty lantern icon, centered, plain field", "a blue mana potion icon, three-quarter view, plain field"]}, dry_run: true returns the quote and starts nothing. epochs is the main cost lever (scales linearly); size the other levers by dataset size (dataset reference). sample_prompts is not optional on a multi-epoch run: the trainer publishes a per-epoch checkpoint only for a run that has them, so a run without them finishes with its final weights alone, one epoch to choose from whatever epochs said, and a model that ends up overfit has nothing earlier to fall back to (a 12-epoch run that came back with a single selectable epoch was this). Caps are per family, 8 on the Flux LoRA family and 4 on Flux.2, Qwen and ZImage LoRAs at authoring time, so read them off the train schema. Write prompts that test the concept off-dataset, following the caption rules of the training type (a style set names new subjects and never the style; a character set leads with the trigger word and a new pose or setting): they are the previews you pick the epoch from, and generic prompts return generic scenes at every epoch, which is how one run spent its whole quote on twenty previews of four unrelated landscapes. Edit families take sample_source_images, one asset id per prompt in the same order; every other family rejects the field. Show the user the quote and get a go-ahead, then launch with action: "start" and the same config (unattended, launch only when the task already authorized training or a budget covering it; otherwise stop and report the quote). configure always quotes and never launches; dry_run: false there is rejected. Only start launches training; start with dry_run: true quotes instead. Treat start as spending the whole quote: do not count on stop returning any of it.jobs_wait with its id in job_ids. No job id means nothing launched: report it instead of retrying. Training outlasts the server wait budget, so re-call with the returned pending_job_ids until completed; never poll job_get.model_schema_get on your new model id and model_run; custom models carry their own parameter contract. A LoRA runs on the base that the schema's runs_as and run_with.required_arguments name (see scenario) and on no other variant of its family, with one documented exception, the Z-Image LoRAs that carry across the Z-Image variants (base reference). A size mismatch or weight dimension error at generation means another variant was sent as the base, not that the training failed: do not retrain, re-read run_with and run the pair it names.models_list with filters: {"privacy": "private", "status": "trained"} lists ready models. model_get with include_description: true fetches the full docs; model_update edits name, descriptions, privacy.Nearly every train failure is dataset handling, not hyper-parameters.
upload_images takes at most 10 asset ids; more returns 400 Too many assetIds provided in a single request. Call once per 10-id chunk: the model accumulates the whole set.The provided assetId is already a training image of this model. After a partial failure, re-send only the chunks that did not land.upload_images returns 429 naming add-training-image with the ceiling in actionLimit. Chunking cannot bypass it: trim to the strongest images or surface the upgrade. Concurrent trainings are capped separately as parallel-training, and some plans set it to zero.configure or start on an empty dataset fails validation on the training-image count. Pair datasets need whole pairs, with a family minimum above one.Model is already training: wait with jobs_wait or train action: "stop". Repeated launches also hit a cooldown whose 429 names remainingSeconds.search first.recommend_training to pick a generation model: it only picks training bases; use recommend or search.train: upload with upload_asset first and pass asset ids; anything else surfaces as a body-shape error naming assetId.Custom models only are supported for this endpoint as a parameter problem: the route accepts your own trained models only; re-read the id from models_list.sample_prompts: the run completes, but with one epoch and no previews, so the quote bought no comparison.configure returns training_started: false and no job; launch through start only after approval and require a job id before waiting.models_list with status: "ready": free-form values are silently ignored, returning everything including deleted models. Use "trained".model_update data.tags replaces the whole tag set; use model_add_tags / model_remove_tags for diffs.recommend_training: the default excludes legacy families; set legacy_ok: true only when a project must stay on one.Voice cloning starts from the same recommend_training call with modality: "voice" and dataset_shape: "short_audio" or "long_audio"; the returned type feeds model_create the same way.
© scenario-labs, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 2 other files (references) in skills/scenario-model-training of scenario-labs/skills.
Open the folder on GitHubat commit f6f8ab7
Scenario Model Training next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Scenario Model Training this skillscenario-labs/skills | 946 | — | ~2.7k | Automated safety check: Pass | MIT | |
| Hugging Face LLM Trainerhuggingface/skills | 11k | 1 repos | ~7.2k | Automated safety check: Pass | Apache-2.0 | |
| LLM Configruvnet/ruflo | 74k | — | ~436 | Automated safety check: Notes | MIT | |
| AI Learning JournalLeoYeAI/openclaw-master-skills | 2.2k | — | ~2.6k | Automated safety check: Pass | MIT | |
| Microsoft Foundrymicrosoft/GitHub-Copilot-for-Azure | 255 | 1 repos | ~6.7k | Automated safety check: Pass | MIT | |
| Castguaardvark/guaardvark | 257 | — | ~673 | Automated safety check: Pass | MIT |
huggingface/skills
Trains or fine-tunes language and vision models with TRL or Unsloth on Hugging Face Jobs cloud GPUs, then converts the results to GGUF.
ruvnet/ruflo
Configure RuVLLM local inference with model selection, MicroLoRA fine-tuning, and SONA adaptation
LeoYeAI/openclaw-master-skills
AI 学习记录与成长追踪工具。用于记录 AI/LLM 学习笔记、使用心得、Prompt 技巧、工具体验等,并提供学习指导和规划。当用户提到以下任何话题时都应使用此 skill:AI 学习记录、学习笔记、AI 使用心得、Prompt 工程学习、模型对比体验、AI 工具使用记录、LLM 学习、RAG 学习、Agent 学习、MCP 学习、AI 微调实践、AI 学习规划、怎么学 AI、AI…
microsoft/GitHub-Copilot-for-Azure
Build, deploy, evaluate, optimize, fine-tune, and manage Microsoft Foundry agents, models, and resources end to end.
guaardvark/guaardvark
Build consistent characters, environments and props in Guaardvark's Cast Library and train LoRAs for them locally (reference photos → vision bible → sample plan → approved samples → training).
mr-tbot/mesh-api
Interact with a Meshtastic LoRa mesh network through MESH-API — list nodes, read messages, send texts, and check connection status.
scenario-labs/skills
A skill your agent uses when drawing or animating with Grease Pencil in Blender 5.x from Python: 2D or 2.5D illustration, frame-by-frame animation, a cutout or part-based 2D character, strokes with…
scenario-labs/skills
A skill your agent uses when grooming hair or fur in Blender with hair curves, such as a character hairstyle, animal fur, procedural fur in geometry nodes, or hair cards and mesh hair for games.
scenario-labs/skills
A skill your agent uses when lighting, rendering or compositing in Blender: light a character, product or hero shot, interior at dusk or night, three-point or motivated lighting, sun and sky, HDRI…
scenario-labs/skills
A skill your agent uses when creating a ChatGPT pet or Codex pet with Scenario: hatching an animated companion from a text idea, a character, mascot or brand cue, or reference photos and art; making…
scenario-labs/skills
A skill your agent uses when animating characters or scenes in Godot 4.7: AnimationPlayer clips and RESET, AnimationTree state machines and blend spaces built in code, Mixamo or glTF import, loop…
scenario-labs/skills
A skill your agent uses when adding or fixing sound in Godot 4.7: audio buses and effects, volume sliders, 'too many sounds', combat audio with hundreds of enemies, sounds clipping or distorting, 3D…
Works with
Categories
A skill your agent uses 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…. Scenario Model Training is an agent skill from scenario-labs/skills. 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.
Scenario Model Training fits situations like: generated assets must keep a consistent style; product look and references stop scaling; A user asks to train a custom model through the Scenario MCP; fine-tune a LoRA.
Run `npx skills add scenario-labs/skills --skill scenario-model-training -a claude-code`. Or copy the skill folder (skills/scenario-model-training in scenario-labs/skills) into .claude/skills/scenario-model-training in your project. Claude Code loads it when a task matches its description.
Run `npx skills add scenario-labs/skills --skill scenario-model-training -a codex`. Or copy the skill folder (skills/scenario-model-training in scenario-labs/skills) into .agents/skills/scenario-model-training in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add scenario-labs/skills --skill scenario-model-training -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/scenario-model-training, .gemini/skills/scenario-model-training, .github/skills/scenario-model-training and .opencode/skills/scenario-model-training in your project.
Going by SKILL.md and its folder, Scenario Model Training needs the command-line tools its instructions call (npx). Our summary lists: Node.js.
SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Scenario Model Training is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.7k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 3.3k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Scenario Model Training: Hugging Face LLM Trainer (huggingface/skills, 11k stars), LLM Config (ruvnet/ruflo, 74k stars), AI Learning Journal (LeoYeAI/openclaw-master-skills, 2.2k stars) and Microsoft Foundry (microsoft/GitHub-Copilot-for-Azure, 255 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
scenario-labs (a GitHub organization) maintains it in scenario-labs/skills, which has 946 GitHub stars. The repository holds 146 skills in this directory. The repository was last updated on October 10, 2026.
Source: scenario-labs/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.