Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/besty0728/unity-skills/lightnpx skills add Besty0728/Unity-Skills --skill lightgit clone --depth 1 https://github.com/Besty0728/Unity-SkillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/besty0728/unity-skills/light)<a href="https://agentmods.dev/skills/besty0728/unity-skills/light"><img src="https://agentmods.dev/badge/skills/besty0728/unity-skills/light.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00008 | $0.03086 |
| Opus 5 | $0.00004 | $0.01543 |
| Sonnet 5 | $0.00002 | $0.00617 |
| Haiku 4.5 | $0.00001 | $0.00309 |
Grade A, and why
unity-light scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 266 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Before calling any skill in this module: if you are about to call a skill with parameters guessed from its name or description, STOP — read this file (or fetch its schema via
GET /skills/recommend?includeSchema=true) first. If you already have the parameter definitions from recommend/schema, you may proceed straight to dryRun.
Triggers
- Adding or tuning lights
- Setting up scene lighting
- Batch-enabling/disabling lights
- 添加或调校灯光、布置场景照明、批量开关灯光
Unity Light Skills
BATCH-FIRST: Use
*_batchskills when operating on 2+ lights.
Operating Mode
- Approval (default): mutating skills (
light_create,light_set_properties,light_set_properties_batch,light_set_enabled,light_set_enabled_batch,light_add_probe_group,light_add_reflection_probe) need user grant; grant triggers a single server-side execution that returns the result. - Auto / Bypass: those skills execute directly.
- Query skills (
light_get_info,light_get_properties,light_find_all,light_get_lightmap_settings) areSkillMode.SemiAuto— they run in all three modes without grant. - This module contains no Delete / PlayMode / Reload / high-risk skills (no NeverInSemi); to remove a Light, call
gameobject_deletefrom thegameobjectmodule.
Guardrails
DO NOT (common hallucinations):
light_adddoes not exist → uselight_create(creates a new light GameObject)light_set_color/light_set_intensitydo not exist → uselight_set_properties(sets color, intensity, range, shadows together)light_deletedoes not exist → usegameobject_deleteon the light's GameObjectlight_set_shadowdoes not exist → uselight_set_propertieswith theshadowsparametershadowsvalues are the Unity enum membersNone/Hard/Soft. Input is matched case-insensitively ("soft"still works) but responses always echo the capitalised form, so compare againstSoft, notsoft, when verifying
Routing:
- For lightmap baking settings →
light_get_lightmap_settings(this module) - For reflection probes →
light_add_reflection_probe(this module) - For light probe groups →
light_add_probe_group(this module)
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago First seen · 266 lines · 8 tokens per session scan A 6711b5739341
unity-light is a skill published in the GitHub repository Besty0728/Unity-Skills (1,701 stars, last pushed today), licensed MIT. It adds 8 tokens to every session and 3,086 once invoked, about $0.0000 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
16-marketing-psychology-global
Use when persuasion principles have to be applied to a specific asset — reciprocity, scarcity, authority, social proof, liking, commitment, and unity mapped onto copy, a landing page, an email, or an ad, each with a hypothesis and a test plan. Trigger on 'marketing psychology', 'Cialdini', 'persuasion principles'…
new-littlejs-game
Scaffold a brand-new, complete playable game project — LittleJS engine included, opens straight from disk in a browser with no server, smallest playable loop written for you. TRIGGER on ANY request to make/create/start/build a game when no other engine or framework is named — "make me a pong game", "make a breakout…
littlejs-conventions
LittleJS game engine (littlejsengine) conventions — REQUIRED before answering, writing, editing, reviewing, or debugging ANY LittleJS code, including one-line questions about a snippet. TRIGGER whenever "LittleJS" appears, or the code uses…
atlas-shape-art
Use when a LittleJS game's visuals are geometric/abstract/neon shapes or it has many round entities (orbs, gems, bubbles, asteroids, particles, stars), OR when speeding up a game that calls many drawCircle/drawEllipse/drawPoly/drawRegularPoly per frame. Renders shapes as tinted atlas tiles instead.
dotcraft-unity
Use when dotcraft-unity MCP or unityexecutecsharp is available, or when the user asks to inspect, automate, capture, or debug Unity Editor state, scenes, assets, Console logs, or GameView output. Provides background-first Unity Editor automation rules.
littlejs-api
Use when you need the exact signature, parameter order, defaults, or existence of a LittleJS engine symbol — e.g. drawTile arguments, the ParticleEmitter constructor, Timer or Sound methods, EngineObject properties, tile/TileInfo helpers. Look the symbol up instead of guessing from memory; LittleJS argument orders are…