
ui
Routes Unity UI requests to the right framework skill (UI Toolkit, uGUI, or IMGUI) and answers UI comparison questions. Use for menus, HUDs, panels, or editor UI when the request doesn't name a framework. Consult before writing any UI code.
- Installs
- 42
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/unity-technologies/unity-agent-plugin --skill ui- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads ui automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Determine the appropriate UI system for the project and route to the correct specialized skill.
When to Route vs Answer Directly
Route to a specialized skill when:
- User wants to understand, edit, or generate specific UI elements
- User references specific files or UI objects
- User asks for UI changes or creation
Answer directly (without routing) when:
- User asks comparative/educational questions ("What's the difference between UI Toolkit and uGUI?")
- User asks about UI system capabilities or recommendations ("Should I use UITK or uGUI for mobile?")
- User needs conceptual explanation of Unity UI architecture
Routing Logic
Step 1: Check for explicit file references or keywords:
| User mentions | Route to |
|---|---|
.uxml or .uss files (including in /Editor/) | ui-uitk |
| "UI Toolkit", "UITK", "UIElements", "CreateGUI" | ui-uitk |
Canvas prefabs/objects, .prefab with UI | ui-ugui |
| "uGUI", "Canvas", "RectTransform", "legacy UI" | ui-ugui |
| "IMGUI", "OnGUI", "OnInspectorGUI", "immediate mode" | ui-imgui |
Figma URL (figma.com/design/...), "Figma", "import from Figma" | Not available — see below |
For editor-related requests (EditorWindow, custom inspector, PropertyDrawer):
- If no explicit UI system mentioned → Go to Step 2 to detect project's editor UI system
- If no existing pattern is detected, default to
ui-uitkfor new editor UI - Only use
ui-imguiif project exclusively uses IMGUI or user explicitly requests it
If explicit file or keywords found, activate the corresponding skill immediately.
Step 2: If ambiguous, detect from project:
Search the project to determine which UI system is in use:
| Look for | Indicates |
|---|---|
.uxml or .uss files (including in /Editor/) | UI Toolkit (runtime or editor) |
UIDocument components in scenes | UI Toolkit (runtime) |
Editor scripts with CreateGUI() method | UI Toolkit (editor) |
Canvas in scenes/prefabs | uGUI |
RectTransform heavy usage | uGUI |
Editor scripts with OnGUI() or OnInspectorGUI() | IMGUI (legacy editor) |
Step 3: If still unclear, ask or default:
- For existing projects: detect and follow whichever framework is already in use (Step 2)
- For new projects with no UI yet: ask the user which framework they prefer (UI Toolkit vs uGUI), briefly explaining that UI Toolkit is modern/CSS-like while uGUI is Canvas-based/mature
- For new runtime/game UI where the user has no preference: default to uGUI (
ui-ugui) - When the user mentions mobile/performance constraints or older Unity versions (pre-6.0): bias toward uGUI (
ui-ugui)
Request Types
Specialized skills handle three types of requests:
| Type | Examples |
|---|---|
| Understanding | "What does this button do?", "How is this laid out?", "Explain this UI" |
| Editing | "Change this color", "Add a label here", "Fix this layout" |
| Generation | "Create a menu", "Make an inventory screen", "Build a settings panel" |
Route all types to the appropriate specialized skill based on the UI system.
Available Sub-Skills
UI Toolkit — ui-uitk
- For Unity 6.0+ projects using UI Toolkit (runtime game UI and editor tools)
- Understands, edits, and generates
.uxmland.ussfiles - Modern, CSS-like styling approach
- Preferred for new editor windows (CreateGUI) and existing UI Toolkit projects
uGUI — ui-ugui
- For projects using Unity's Canvas-based UI system
- Understands, edits, and generates Canvas hierarchies
- Uses Layout Groups for responsive design
- Default for new runtime/game UI when the user has no framework preference
IMGUI — ui-imgui
- For legacy editor tools using OnGUI/immediate mode
- Only use when project has existing IMGUI editor code or user explicitly requests IMGUI
- Understands, edits, and generates EditorWindow, inspectors, PropertyDrawers built with OnGUI
- Not for runtime game UI — for new editor tools, use UI Toolkit unless the project already uses IMGUI exclusively
Figma design import — not available here
Importing a Figma design requires Unity's Figma integration service, which only exists inside Unity AI Assistant. There is no client-side equivalent, so do not promise it.
If the user brings a Figma URL, say the automated import is not available here and offer the alternative: ask them to describe or screenshot the screen, then build it with the appropriate framework skill above.
Common Guidelines (All UI Systems)
Scope Discipline
Do only what is requested:
- Question → answer without making changes
- Targeted edit → modify only what's specified
- Generation → create only requested files
- Don't proactively add scripts unless explicitly asked
These do NOT imply scripts:
- "proper buttons" → well-styled buttons
- "working UI" → valid UI that renders
- "menu screen" → visual layout only
Conventions
Follow project patterns first. Search existing files before applying defaults.
| Type | Convention |
|---|---|
| Element names | Follow project patterns, or camelCase |
| File organization | Match existing project structure |
Workflow
- Determine UI system — Use routing logic above
- For Figma requests, tell the user the automated import is not available here, then work from their description or screenshot and continue with framework detection
- Activate specialized skill — Route to
ui-uitk,ui-ugui, orui-imgui - Skill handles request — Understanding, editing, or generation as appropriate
Handling Mixed Projects
Many Unity projects use multiple UI systems simultaneously (e.g., UI Toolkit for runtime game UI plus editor tools). When you detect multiple systems:
- For runtime UI requests (menus, HUDs, game screens) → Route to whichever runtime system (UITK or uGUI) is already in use
- For editor tool requests (custom inspectors, editor windows):
- Prefer UI Toolkit (CreateGUI) for new editor UI — it's the modern approach
- Only use IMGUI if the project's existing editor tools use IMGUI exclusively, or user explicitly requests IMGUI
- Check for existing editor
.uxmlfiles to confirm UITK usage
- If creating new runtime UI in a mixed project → Match the pattern used by similar existing UI; if there is no similar existing UI and the user has no preference, use uGUI
FAQ
What does the ui skill do?
Routes Unity UI requests to the right framework skill (UI Toolkit, uGUI, or IMGUI) and answers UI comparison questions. Use for menus, HUDs, panels, or editor UI when the request doesn't name a framework. Consult before writing any UI code.
How do I install ui?
Run npx skills add https://github.com/unity-technologies/unity-agent-plugin --skill ui in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/ui/ (personal) or .claude/skills/ui/ (project).
Which AI agents can use ui?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is ui safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains ui?
It is published by unity-technologies in unity-technologies/unity-agent-plugin. It has 42 recorded installs.
More from unity-technologies/unity-agent-plugin
unity-cli
unity-technologies/unity-agent-plugin
Controls the Unity Editor and projects from the command line, driving a running Editor to edit scenes and assets or run C. Use when asked to install or manage Editors, licenses, or projects, set up version control, build, test, configure the Unity MCP server, or run any unity command.
urp-postprocessing
unity-technologies/unity-agent-plugin
Sets up, configures, and debugs URP post-processing with the Volume framework. Use for bloom, tonemapping, color adjustments, depth of field, vignette, or other Volume overrides.
ui-ugui
unity-technologies/unity-agent-plugin
Understands, edits, and generates Unity uGUI Canvas hierarchies, RectTransforms, Layout Groups, and prefab UI. Use for requests involving Canvas, uGUI, RectTransform, or prefab UI files.
unity-package-management
unity-technologies/unity-agent-plugin
Adds, removes, upgrades, and discovers Unity (UPM) packages from outside the Editor, with the Pipeline package commands first and a C script as the fallback. Use for package installs, verifying package IDs and versions, or choosing which packages a game needs.
ui-uitk
unity-technologies/unity-agent-plugin
Open the skill to read its SKILL.md instructions.
localization
unity-technologies/unity-agent-plugin
Sets up and configures Unity Localization, including locales, String and Asset Tables, and CJK fonts. Use when the user asks to add languages, translate UI text, or mentions i18n or multilingual support.
Popular frontend & design skills
setup-matt-pocock-skills
mattpocock/skills
Configure this repo for the engineering skills: set up its issue tracker, triage label vocabulary, and domain doc layout. Run once before first use of the other engineering skills.
frontend-design
anthropics/skills
Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.
hyperframes-animation
heygen-com/hyperframes
All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases / Lottie player / Three.js mixer). Also covers auditing an existing composition's choreography (animation map) and 24 named text-animation effects. HyperFrames-native: single paused timeline, seek-safe, deterministic.
prototype
mattpocock/skills
Build a throwaway prototype to answer a design question. Use when the user wants to sanity-check whether a state model or logic feels right, or explore what a UI should look like.
hyperframes-core
heygen-com/hyperframes
The HyperFrames composition contract — build one renderable project. Use for composition structure, the data- timing attributes, class="clip", tracks, sub-compositions, variables, framework-owned media playback, deterministic-render rules, and validation. Read before writing composition HTML.
vercel-react-best-practices
vercel-labs/agent-skills
React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.