Agent skill

Scenario Unity Web

by scenario-labs in scenario-labs/skills

A skill your agent uses when a Unity 6.3 game must run in a browser: 'export to WebGL', Web build settings or Build Profiles, gzip or Brotli, Decompression Fallback, server headers, 'Unable to parse…

MITAuto-check passedGame Development

Install Scenario Unity Web

skills CLI
$ npx skills add scenario-labs/skills --skill scenario-unity-web -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install scenario-labs/skills scenario-unity-web --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/game-engines/unity/scenario-unity-web .claude/skills/scenario-unity-web && rm -rf skills-src

Use ~/.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/

Facts

Skill name
scenario-unity-web
GitHub stars
931
Token cost
~4k tokens
SKILL.md length
1,849 words
Files
23 (incl. scripts, references)
Skills in repo
143
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses when a Unity 6.3 game must run in a browser: 'export to WebGL', Web build settings or Build Profiles, gzip or Brotli, Decompression Fallback, server headers, 'Unable to parse…

  • Works in 8 steps: The host decides compression. Own HTTPS… → Budget bytes to gameplay start.… → Load time is the metric; past broadband… → …
  • A Unity 6.3 game must run in a browser: export to WebGL
  • SKILL.md covers Stance (the expert delta), Establish first, Workflow and Numbers, plus 5 more sections
  • Runs C# scripts from its folder; calls npx

What it does

Scenario Unity Web is an agent skill from scenario-labs/skills. Use when a Unity 6.3 game must run in a browser: 'export to WebGL', Web build settings or Build Profiles, gzip or Brotli, Decompression Fallback, server headers, 'Unable to parse .framework.js.br', build too big or slow to load, itch.io, CrazyGames or Poki limits, Addressables or AssetBundles on the Web, 'Could not produce class with ID', Task.Run freezing the browser, WebGL 2 vs WebGPU, .jslib and SendMessage interop, a page text field that gets no keystrokes, mobile browsers crashing, HTTPS for sensors, hosting…

Its SKILL.md is about 4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 32 other files, including scripts and reference files (for example `references/critique.md`, `references/expert-notes.md` and `references/gui-paths.md`).

It sits in Game Development, covering Game development and 3D graphics and WebGL. 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.

When your agent uses it

  • A Unity 6.3 game must run in a browser: export to WebGL
  • Web build settings
  • Decompression Fallback
  • Unable to parse .framework.js.br

Example prompts

  • “export to WebGL”
  • “Unable to parse .framework.js.br”
  • “Could not produce class with ID”
  • “/scenario-unity-web”

Requirements

  • Node.js

Workflow steps

8 steps, taken from the first numbered list in SKILL.md.

  1. The host decides compression. Own HTTPS server or CDN: Brotli, fallback off, Content-Encoding per file, application/wasm on every .wasm*…
  2. Budget bytes to gameplay start. CrazyGames counts the initial download until the first gameplayStart: 20 MB for the mobile homepage, 50 MB…
  3. Load time is the metric; past broadband the binary and CPU dominate. -25 percent load time gave +50 percent sessions (Craven, LlE35onVdmQ…
  4. One thread, one heap, the browser's clock. Every ThreadPool API is an unrecoverable hang: use Awaitable, coroutines, UnityWebRequest…
  5. WebGL 2 ships; WebGPU is for compute and falls back silently. Experimental in 6.3 to 6.5, supported but opt-in from 6.6. Keep WebGL 2…
  6. The page and the game share a narrow contract. .jslib in ES5, strings as heap pointers, replies through makeDynCall into a static…
  7. What ships is not what you set. Strip Engine Code removes classes only bundles use (Could not produce class with ID 182, observed; fix…
  8. Ship like a live service and cut what does not earn its bytes. Hashed names, previous build kept, 5 percent staged rollout (Loveridge…

What it can do on your machine

Read from SKILL.md and the folder at commit 91caa01. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    Ships 5 files in scripts/ (C#, from the files we listed), which the agent can run.

    Shell commands in SKILL.md call:

    • npx

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    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.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Scenario Unity Web loads about 4k tokens when it runs, and up to ~37k if it reads all its reference files. Until then it costs about 138 tokens; SKILL.md has 1,849 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~138
When it runs · the whole SKILL.md, loaded when a task matches
~4k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~37k

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.

Safety

Auto-check passed

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); the scripts in this folder are not scanned.

SKILL.md

The full file from scenario-labs/skills at commit 91caa01, republished under its MIT licence (© scenario-labs). 1,849 words, ~4,050 tokens.

Download SKILL.mdSave it as .claude/skills/scenario-unity-web/SKILL.md (or your agent's skills folder). This skill also uses 22 other files; get the full folder from GitHub.
name
scenario-unity-web
description
Use when a Unity 6.3 game must run in a browser: 'export to WebGL', Web build settings or Build Profiles, gzip or Brotli, Decompression Fallback, server headers, 'Unable to parse .framework.js.br', build too big or slow to load, itch.io, CrazyGames or Poki limits, Addressables or AssetBundles on the Web, 'Could not produce class with ID', Task.Run freezing the browser, WebGL 2 vs WebGPU, .jslib and SendMessage interop, a page text field that gets no keystrokes, mobile browsers crashing, HTTPS for sensors, hosting and rollout.
license
MIT

Unity Web (web specialist)

Expert level on the Web means the build is judged where players get it: bytes until gameplay starts, served by the real host with the right headers, loaded in a real browser that reports which graphics API ran, how big the heap grew, and that the page and the game talk. The stance: the host picks the compression, the budget is measured to the first playable moment, and nothing counts until a served build loads headless with zero errors and a screenshot you looked at. Target: Unity 6000.3.21f1, URP 17.3, Chrome headless on macOS. 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.

REQUIRED BACKGROUND: scenario-unity-expert (channels, review loop, 6.3 traps). Toolkit: ut_env, ut_run (incl. build(P, "web"), run_tests), ut_review, plus this skill's scripts/ut_web.py, scripts/AgentKit/Web/WebJobs.cs and scripts/WebRuntime/ (bridge, .jslib, error reporter, template).

Stance (the expert delta)

  1. The host decides compression. Own HTTPS server or CDN: Brotli, fallback off, Content-Encoding per file, application/wasm on every .wasm* (6.3 Manual). Plain HTTP: gzip (Chrome refused Brotli at a LAN address, ERR_CONTENT_DECODING_FAILED, observed; localhost is exempt). itch.io: Decompression Fallback on (Max O'Didily 8iApGVX--B0 [00:01:40]). Poki: Disabled.
  2. Budget bytes to gameplay start. CrazyGames counts the initial download until the first gameplayStart: 20 MB for the mobile homepage, 50 MB otherwise, 1,500 files. Deferred content must be requested after that moment (network log proves it). Preload tags only for bundles the first playable moment needs: they move bytes into the counted window (observed +0.84 MB before start).
  3. Load time is the metric; past broadband the binary and CPU dominate. -25 percent load time gave +50 percent sessions (Craven, LlE35onVdmQ [00:08:40]); gains flatten above 86 Mbps [00:11:26]. Measure with CPU throttling and latency; hosting coverage is load time (Loveridge, FYsVftoLBP8 [00:16:12]). Design the wait: a loading card with how-to text, not a bare bar (Craven [00:14:16]), then a tap to play that also unlocks audio.
  4. One thread, one heap, the browser's clock. Every ThreadPool API is an unrecoverable hang: use Awaitable, coroutines, UnityWebRequest (observed: Task.Run(...).Result froze the tab). The heap grows from Initial Memory Size and growth can crash on phones: size Initial from a measured session (observed 32 MB grew to 68 to 74 MB; set to 80, no growth). Leave targetFrameRate at -1: Unity cannot query the refresh rate (6.3 Manual).
  5. WebGL 2 ships; WebGPU is for compute and falls back silently. Experimental in 6.3 to 6.5, supported but opt-in from 6.6. Keep WebGL 2 below it and log SystemInfo.graphicsDeviceType (a plain-HTTP page got WebGL 2 with no error, observed). WebGL 2 skins on the CPU (30 characters: 7 fps vs 30 on WebGPU, Duncan 3bu4WZUCGYc [~00:15:13]) and takes non-directional lightmaps only.
  6. The page and the game share a narrow contract. .jslib in ES5, strings as heap pointers, replies through makeDynCall into a static [MonoPInvokeCallback], SendMessage with one JSON string to an exactly named object. Unity takes page-wide keyboard input by default: a page name field received nothing until WebGLInput.captureAllKeyboardInput = false (observed). No system fonts: CJK and Greek names drew blank while Font.HasCharacter said present (observed). Portals ignore or rewrite index.html, so the bridge lives in .jslib.
  7. What ships is not what you set. Strip Engine Code removes classes only bundles use (Could not produce class with ID 182, observed; fix: link.xml). Code Optimization and the texture subtarget live in Library/: a fresh clone reads Shorter Build Time (observed). Safari has no IndexedDB in iframes (6.3 Manual): on itch.io, Safari players may reload everything.
  8. Ship like a live service and cut what does not earn its bytes. Hashed names, previous build kept, 5 percent staged rollout (Loveridge [frame 00:23:29]), symbols and an error collector per release. "If it only improves your game's visual fidelity by one or two percent... it needs to go" [00:11:15]: URP post data cost 1.61 MB here.

Establish first

Ask once: every host or portal (compression, fallback, page ownership, iframe); audience and browser floor (WebAssembly 2023 needs Safari 16.4+, Chrome 91+, Firefox 89+, while Unity supports iOS Safari 15; CrazyGames disables Unity on iOS by default); budget in bytes to gameplay start and seconds at a stated line speed and region; 2D or 3D, URP, lightmaps, skinned crowds; compute need (WebGPU); the page API and any page text fields; scripts player text can use (fonts); desktop and mobile (dual DXT/ASTC data); audio (first tap); Unity version. Defaults: WebGL 2 only; own HTTPS + Brotli; 20 MB portal mobile, 30 MB otherwise (Loveridge [00:03:29]); Explicitly Thrown; WebAssembly 2023 on; Disk Size while iterating, Disk Size with LTO for release; Maximum Memory 2048 MB, Initial from measurement; DPR 1 on phones; targetFrameRate -1.

Workflow

  1. Preflight and audit. ReadSettings, AuditWeb (scenes, lighting, skinning, stripping, splash, post data, imports), ut_web.scan_hang_apis (hangs, targetFrameRate), scan_jslib, package_report. GATE: zero audit errors; non-empty valid scene list (Cam Ayres bF_eUuxGEcA [00:04:02]); every costly package justified.
  2. Settings per host. WebJobs.ApplySettings with a preset (own-https, plain-http, itch, poki, crazygames, dev), always passing code_optimization and texture_subtarget; launch with build_target="WebGL". write_policy plus WebReleasePolicyTests (EditMode) guard CI. GATE: readback and 8 policy tests pass.
  3. Interop. ut_web.install_runtime(P); wire WebBridge, WebLeaderboard, WebErrorReporter (full code in procedures P3). GATE: 0 compile errors, scans clean, bridge object named as the page calls it.
  4. Build. ut_run.build(P, "web", out=...). Bundles: WriteBundleLinkXml first. GATE: Succeeded, file set matches settings, size_report recorded, build_log_report read (rank there, judge by bytes on disk).
  5. Serve and audit headers. serve, header_audit locally, then on the real host. GATE: zero errors; bytes sent equal bytes on disk.
  6. Load in Chrome. browser_check(..., metrics_seconds=8, reload=True) with the page mock. GATE: ready, gameplay_start, feature events; zero banners, zero unexpected console errors; intended ready.api; deferred requests after start; heap did not grow on mobile settings; fps steady; warm reload fetches no .data body (304 allowed); screenshot opened.
  7. Budget and load time. budget_check; throttled load (20 Mbps, 40 ms, CPU x4) and a 250 ms run for far regions. GATE: pass with headroom.
  8. Variants. itch (fallback, zip, iframe host), portal SDK, WebGPU on secure and insecure origins, dual DXT/ASTC (merge_texture_variants), phone emulation (DPR cap). GATE per variant as in 5 to 7.
  9. Release. Disk Size with LTO, symbols archived, AGENTWEB_ERROR_URL or WebErrorReporter.endpoint set, previous build kept, rollout plan (P12). Handoff packet with Verified and Assumed.
Show full SKILL.md (784 more words)Show less

Numbers

ValueRelative toSource
20 / 50 MB, 1,500 filesCrazyGames initial download to first gameplayStart (mobile homepage / general)CrazyGames
30 MBstudio binary rule ("table stakes")Loveridge [00:03:29]
+3.6 / +1 / +0.7 MBURP, URP post-processing, TextMeshPro resourcesCrazyGames tests
9.47 MB, 8.1 srelease demo build (LTO): initial download; time to gameplay_start at 20 Mbps, 40 ms, CPU x4observed
+0.83 ssame load at 250 ms instead of 40 ms latencyobserved
-1.61 MBURP renderer post data off (10.08 to 8.47 MB)observed
32 to 68-74 MBheap growth from the default Initial Memory Size during startup; 80 MB set: no growthobserved
2048 MBMaximum Memory Size; bugs above it before Chrome/Firefox 1196.3 Manual
7 to 30 fps30 skinned characters, WebGL (CPU skinning) vs WebGPUDuncan [~00:15:13]
48 / 86 Mbpsmedian mobile / broadband speed where gains flattenCraven [00:10:53]

More measured values: references/expert-notes.md (Numbers, full).

Quality gates

  • Measurable: readback and policy tests pass; audit and scans clean; BuildReport Succeeded; header_audit 0 errors on the real host; browser_check ok with the intended API; deferred after start; heap flat; errors reach the collector; budget_check pass; throttled load under budget.
  • Visual: canvas screenshot opened: scene rendered, UI legible at 900x500, DPR 1 and a 390 px portrait canvas, a line of every script players can type, loading card and banners readable.

Common mistakes

MistakeWhat it looks likeFix
Quick local server for a compressed buildSyntaxError, "Unable to parse ...framework.js.br"ut_web.serve or per-suffix Content-Encoding
Brotli on plain HTTPERR_CONTENT_DECODING_FAILEDHTTPS, or gzip + Allow downloads over HTTP
Task.Run, HttpClient, threads, timerswork never runs; .Result freezes the tabAwaitable, coroutines, UnityWebRequest
targetFrameRate = 30 "for mobile"Unity times its own loop against an assumed 60 Hzleave -1; throttle only on purpose
Small Initial Memory with growth on phonesheap 32 to 74 MB at startup; crashes when no contiguous blockInitial = measured peak (heap_advice)
High stripping + bundlesCould not produce class with ID, component missingWriteBundleLinkXml, rebuild
Release settings trusted on CIa fresh clone reads Shorter Build Time and the default texture formatset both in every job, or commit a Build Profile
Page field beside the canvaskeystrokes swallowedWebGLInput.captureAllKeyboardInput = false (SetKeyboardCapture)
Player names in any script, built-in fontblank glyphs; Font.HasCharacter still trueship fallback fonts or draw names in HTML; screenshot each script
Trusting the Graphics API list or version loreWebGPU build running WebGL 2; "WebGPU is production-ready in 6.3"log the API per origin; 6.3 to 6.5 experimental, 6.6 opt-in
{{{ }}} or ES6 in a .jslibbuild failsES5, no macros in comments (scan_jslib)
Page logic in index.html for a portalmissing on CrazyGames, rewritten on Poki.jslib or the portal SDK
Template defaults shippedShorter Build Time, Minimal stripping, WASM 2023 off: 46 MB raw wasmrelease preset

Handoffs

  • Receives from scenario-unity-architecture: code free of hang APIs (scan findings go back); scenario-unity-pipeline-automation: Addressables layout, CI, Build Profiles (this skill supplies the policy tests, LZ4, deferred loading, link.xml); scenario-unity-mobile: ASTC vs DXT, touch, safe areas; scenario-unity-ui: canvas legible at 900x500, DPR 1 and portrait, fallback fonts for player text; scenario-unity-rendering-lighting: a Web URP tier (1 to 2 cascades, lean or no post, non-directional lightmaps or real-time); scenario-unity-shaders and scenario-unity-vfx: WebGPU-safe compute and a WebGL 2 fallback; scenario-unity-performance: frame and memory budgets.
  • Delivers to scenario-unity-expert and the user: build folders per host, header table or server config, size_report, budget_check, browser_check evidence (API, events, bytes before start, heap, fps, screenshots), policy file, zip, symbols, Verified and Assumed lists.

Unity 6.3 notes

  • Menus say "Web", code keeps BuildTarget.WebGL, PlayerSettings.WebGL, UNITY_WEBGL, Assets/WebGLTemplates; no public API creates a Build Profile before 6.5. WebGLInput lives in UnityEngine.WebGLModule, present only in Web player builds: guard it with UNITY_WEBGL && !UNITY_EDITOR.
  • URP template ships Brotli, Shorter Build Time, WebAssembly 2023 off, Minimal stripping (observed); WebAssembly 2023 becomes the default in 6.5 (Emscripten 4.0.19; 6.3 reports 3.1.39-git).
  • WebGPU: experimental and URP-only in 6.3; PSO tracing and Microphone arrive in 6.4; supported, opt-in, Device Filter and compatibility mode in 6.6.
  • The Build Profile's texture compression overrides Player Settings (per-texture overrides beat both) and, like Code Optimization, is stored outside ProjectSettings.
  • unityInstance.GetMetricsInfo() (heap, fps, janked frames) works in release builds without the Diagnostics Overlay (whose JS memory reads N/A on Safari and iOS); 6.3 profiles a running Web build over IP; the Frame Debugger does not work on the Web.

References

  • references/procedures.md: 24 procedures with full code (bridge included), live test and recorded result.
  • references/expert-notes.md: judgment by expert with timestamps, full numbers, disagreement table.
  • references/critique.md: the self-review rubric.
  • references/gui-paths.md: the same work through windows and menus.
  • references/sources.md: every source, credentials, timestamps, revision history.
  • scripts/ut_web.py, scripts/AgentKit/Web/WebJobs.cs, scripts/AgentKitOptional/ (Addressables job, EditMode policy tests), scripts/WebRuntime/ (bridge, error reporter, .jslib, AgentWeb template).

© 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

Files

SKILL.md and 22 other files (scripts, references) in skills/game-engines/unity/scenario-unity-web of scenario-labs/skills.

  • SKILL.md
  • references/critique.md
  • references/expert-notes.md
  • references/gui-paths.md
  • references/procedures.md
  • references/sources.md
  • scripts/AgentKit/Web/WebJobs.cs
  • scripts/AgentKitOptional/Addressables/WebAddressablesJobs.cs
  • scripts/AgentKitOptional/Tests/AgentWeb.EditorTests.asmdef
  • scripts/AgentKitOptional/Tests/WebReleasePolicyTests.cs
  • scripts/WebRuntime/Optional/Addressables/WebDeferredAddressable.cs
  • … and 12 more

Open the folder on GitHubat commit 91caa01

Compare with similar skills

Scenario Unity Web 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.

Scenario Unity Web compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Scenario Unity Web this skillscenario-labs/skills931—~4kAutomated safety check: PassMIT
Asset Pipelinerehan-remade/universal-modder5.8k—~2kAutomated safety check: PassMIT
Blender Image To 3Dmajidmanzarpour/blender-game-skills135—~5.7kAutomated safety check: PassMIT
Text To 3D AssetLaurentiuGabriel/unreal-game-assets-creation-skill148—~2.1kAutomated safety check: PassNone
Godot 3D Essentialsjame581/GodotPrompter799—~3.7kAutomated safety check: PassMIT
Unreal Scene Buildingflopperam/unreal-engine-mcp1.1k—~1.4kAutomated safety check: PassNone

Similar skills

  • Asset Pipeline

    rehan-remade/universal-modder

    Turn generated or hand-made art into exactly what a game engine loads.

    5.8k GitHub stars~2k tokensUpdated today
    Game DevelopmentAuto-check passed
  • Blender Image To 3D

    majidmanzarpour/blender-game-skills

    Build a game-ready 3D asset in Blender from reference images (concept art, photos, turnarounds, sketches, screenshots) for any category, including characters, creatures, architecture, vehicles…

    135 GitHub stars~5.7k tokensUpdated 15 days ago
    Game DevelopmentAuto-check passed
  • Text To 3D Asset

    LaurentiuGabriel/unreal-game-assets-creation-skill

    Generate a game-ready 3D asset by running the local AI pipeline sequentially: Fooocus (SDXL text-to-image) - Hunyuan3D-2 (image-to-textured-GLB) - optional Blender FBX convert + Unreal import.

    148 GitHub stars~2.1k tokensUpdated 2 mo ago
    Game DevelopmentAuto-check passed
  • Godot 3D Essentials

    jame581/GodotPrompter

    Covers Godot 4.3+ 3D systems such as materials, lighting, shadows, environment, global illumination, fog, LOD, occlusion culling and decals, with GDScript first and C# second.

    799 GitHub stars~3.7k tokensUpdated today
    Game DevelopmentAuto-check passed
  • Unreal Scene Building

    flopperam/unreal-engine-mcp

    Guides scene and world building in Unreal Engine through the Flopperam MCP: placing actors, sculpting landscapes, scattering foliage, editing materials and verifying the level.

    1.1k GitHub stars~1.4k tokensUpdated 3 mo ago
    Game DevelopmentAuto-check passed
  • Phaser4 Gamedev

    chongdashu/vibejam-starter-pack

    Build 2D browser games with Phaser 4: WebGL-first rendering, scenes, filters, lighting, shaders, DynamicTexture and RenderTexture, tilemaps, SpriteGPULayer, TilemapGPULayer, and Phaser 3 to 4…

    149 GitHub stars~2.8k tokensUpdated 5 mo ago
    Game DevelopmentAuto-check passed

More from scenario-labs/skills

All 143 skills in this repo
  • Scenario Blender Grease Pencil

    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…

    931 GitHub stars~4.5k tokensUpdated yesterday
    Auto-check passed
  • Scenario Blender Hair

    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.

    931 GitHub stars~4.7k tokensUpdated yesterday
    Auto-check passed
  • 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…

    931 GitHub stars~5k tokensUpdated yesterday
    Auto-check passed
  • Scenario Godot Animation

    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…

    931 GitHub stars~4.7k tokensUpdated yesterday
    Auto-check passed
  • Scenario Godot Audio

    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…

    931 GitHub stars~4.7k tokensUpdated yesterday
    Auto-check passed
  • Scenario Godot Multiplayer

    scenario-labs/skills

    A skill your agent uses when a Godot 4 game goes online or co-op: host and join with ENet, WebSocket for a web build, RPCs (@rpc, rpcid, anypeer), MultiplayerSpawner and MultiplayerSynchronizer…

    931 GitHub stars~5.1k tokensUpdated yesterday
    Auto-check passed

Questions about Scenario Unity Web

What does Scenario Unity Web do?

A skill your agent uses when a Unity 6.3 game must run in a browser: 'export to WebGL', Web build settings or Build Profiles, gzip or Brotli, Decompression Fallback, server headers, 'Unable to parse…. Scenario Unity Web is an agent skill from scenario-labs/skills.

When should I use Scenario Unity Web?

Scenario Unity Web fits situations like: A Unity 6.3 game must run in a browser: export to WebGL; web build settings; decompression Fallback; unable to parse .framework.js.br.

How do I install Scenario Unity Web in Claude Code?

Run `npx skills add scenario-labs/skills --skill scenario-unity-web -a claude-code`. Or copy the skill folder (skills/game-engines/unity/scenario-unity-web in scenario-labs/skills) into .claude/skills/scenario-unity-web in your project. Claude Code loads it when a task matches its description.

How do I install Scenario Unity Web in Codex?

Run `npx skills add scenario-labs/skills --skill scenario-unity-web -a codex`. Or copy the skill folder (skills/game-engines/unity/scenario-unity-web in scenario-labs/skills) into .agents/skills/scenario-unity-web in your project. Codex loads it when a task matches its description.

Can I use Scenario Unity Web in Cursor, Gemini CLI or GitHub Copilot?

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-unity-web -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-unity-web, .gemini/skills/scenario-unity-web, .github/skills/scenario-unity-web and .opencode/skills/scenario-unity-web in your project.

What does Scenario Unity Web need to run?

Going by SKILL.md and its folder, Scenario Unity Web needs C# for the scripts in its folder and the command-line tools its instructions call (npx). Our summary lists: Node.js.

Does Scenario Unity Web access the network?

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.

Is Scenario Unity Web safe to install?

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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Scenario Unity Web use?

Scenario Unity Web is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Scenario Unity Web use?

About 4k tokens (SKILL.md is roughly 16k 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 33k tokens, read only when the agent opens those files.

What are the alternatives to Scenario Unity Web?

Skills that share tags, products or a category with Scenario Unity Web: Asset Pipeline (rehan-remade/universal-modder, 5.8k stars), Blender Image To 3D (majidmanzarpour/blender-game-skills, 135 stars), Text To 3D Asset (LaurentiuGabriel/unreal-game-assets-creation-skill, 148 stars) and Godot 3D Essentials (jame581/GodotPrompter, 799 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Scenario Unity Web?

scenario-labs (a GitHub organization) maintains it in scenario-labs/skills, which has 931 GitHub stars. The repository holds 143 skills in this directory. The repository was last updated on October 8, 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.