mcpbeat

Unity Script Roles

besty0728/unity-script-roles

Advises on assigning Unity script roles — whether a class should be a MonoBehaviour, ScriptableObject, plain C# service, or installer. Use when deciding a class's role, splitting responsibilities across types, or choosing between MonoBehaviour and plain C#, even if the user just asks "这个该用MonoBehaviour吗" or "职责怎么分". 为 Unity 脚本职责划分提供建议(某个类应作 MonoBehaviour、ScriptableObject、纯 C# 服务还是 installer);当用户要确定类的职责、在类型间拆分职责、或在 MonoBehaviour 与纯 C# 间抉择时使用。

356 tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
1536
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/Besty0728/Unity-Skills --skill unity-script-roles

The instruction itself

5 sections, as written by the author

Unity Script Roles

Use this skill before creating a batch of gameplay scripts.

Goal

Turn a rough script list into explicit roles so AI does not generate everything as MonoBehaviour.

Output Format

  • Script name
  • Recommended role
  • Main responsibility
  • Main dependencies
  • Why this role fits better than the alternatives

Common Roles

  • MonoBehaviour bridge
  • ScriptableObject config/data
  • pure C# domain/service
  • presenter / controller
  • state / state machine node
  • installer / bootstrap helper

Guardrails

> Mode: Documentation only — no REST skills to gate; load freely under any operating mode (Approval / Auto / Bypass).

  • Do not make every class a MonoBehaviour.
  • Do not force ScriptableObject onto runtime state that should stay in memory-only objects.

How to use it

Copy the folder

Take besty0728/unity-script-roles from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.