/ui
Create and lay out Unity UGUI screens. 创建与布局 Unity UGUI 界面。
$ npx -y skills add Besty0728/Unity-Skills --skill ui --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/ui
Context preview
The summary Claude sees to decide when to auto-load this skill.
Create and lay out Unity UGUI screens. 创建与布局 Unity UGUI 界面。
SKILL.md
ui.SKILL.mdname: unity-ui
description: Create and lay out Unity UGUI screens. 创建与布局 Unity UGUI 界面。
Triggers
- Building UGUI screens
- Adding Canvas elements
- Arranging UI layout
- 搭建 UGUI 界面、添加 Canvas 元素、排布 UI 布局
Unity UI Skills
Use this module for Unity UGUI / Canvas workflows. It is separate from UI Toolkit.
> **Batch-first**: Prefer `ui_create_batch` when creating `2+` UI elements.
Operating Mode
- **Approval**:查询类 skill(`ui_find_all`,源码标 `SkillMode.SemiAuto`)直接执行;其余创建/修改类(`ui_create_*` / `ui_set_*` / `ui_add_*` / `ui_layout_children` / `ui_align_selected` 等,标 `SkillMode.FullAuto`)需用户 grant,grant 后服务端一步执行返结果。
- **Auto / Bypass**:所有 skill 直接执行;Auto 走 AI 自我评估,Bypass 全放行。
- 本模块**不含** Delete / PlayMode / Reload / 高危 skill,无 Bypass-only 拦截项。删除 UI 节点请走 `gameobject` 模块。
**DO NOT** (common hallucinations):
- `ui_add_canvas` does not exist -> use `ui_create_canvas`
- `ui_create_label` does not exist -> use `ui_create_text`
- `ui_create_checkbox` does not exist -> use `ui_create_toggle`
- `ui_set_color` does not exist -> use `component_set_property` on `Image`/`Text`, or the dedicated UI property skills when available
- Do not confuse UGUI (`ui`) with UI Toolkit (`uitoolkit`)
**Routing**:
- For UXML/USS/UIDocument -> use `uitoolkit`
- For XR-compatible world-space Canvas conversion -> use `xr_setup_ui_canvas`
- For text updates after creation -> use `ui_set_text`
- For layout and alignment -> use `ui_layout_children`, `ui_align_selected`, `ui_distribute_selected`
Skills
Create Skills
| Skill | Use | Key parameters | |-------|-----|----------------| | `ui_create_canvas` | Create Canvas | `name?`, `renderMode?` | | `ui_create_panel` | Create panel container | `name?`, `parent?`, `r/g/b/a?` | | `ui_create_button` | Create button | `name?`, `parent?`, `text?`, `width/height?` | | `ui_create_text` | Create text label | `name?`, `parent?`, `text?`, `fontSize?`, `r/g/b?` | | `ui_create_image` | Create image | `name?`, `parent?`, `spritePath?`, `width/height?` | | `ui_create_inputfield` | Create input field | `name?`, `parent?`, `placeholder?`, `width/height?` | | `ui_create_slider` | Create slider | `name?`, `parent?`, `minValue?`, `maxValue?`, `value?` | | `ui_create_toggle` | Create toggle | `name?`, `parent?`, `label?`, `isOn?` | | `ui_create_dropdown` | Create dropdown | `name?`, `parent?`, `options?`, `width/height?` | | `ui_create_scrollview` | Create ScrollRect hierarchy | `name?`, `parent?`, `width/height?`, `horizontal?`, `vertical?` | | `ui_create_rawimage` | Create RawImage | `name?`, `parent?`, `texturePath?`, `width/height?` | | `ui_create_scrollbar` | Create scrollbar | `name?`, `parent?`, `direction?`, `value?`, `size?` | | `ui_create_batch` | Create multiple UI elements | `items` (`JSON` string array) |
Query and Layout Skills
| Skill | Use | Key parameters | |-------|-----|----------------| | `ui_find_all` | Find scene UI elements | `uiType?`, `limit?` | | `ui_set_text` | Update text content | `name`, `text` | | `ui_set_rect` | Set RectTransform size/offsets | target, `width`, `height`, `posX`, `posY`, `left/right/top/bottom?` | | `ui_get_rect_transform` | Read full RectTransform data | target | | `ui_set_rect_transform` | Set full RectTransform data | anchors, pivot, offsets, local transform, width/height | | `ui_set_rect_transform_batch` | Set full RectTransform data for multiple elements | `items` | | `ui_set_anchor` | Apply anchor preset | target, `preset?`, `setPivot?` | | `ui_layout_children` | Vertical/Horizontal/Grid layout | target, `layoutType?`, `spacing?` | | `ui_align_selected` | Align current selection | `alignment?` | | `ui_distribute_selected` | Distribute current selection | `direction?` |
Property and Effect Skills
| Skill | Use | Key parameters | |-------|-----|----------------| | `ui_set_image` | Image type/fill/sprite | target, `type?`, `fillMethod?`, `fillAmount?`, `spritePath?` | | `ui_add_layout_element` | Add LayoutElement constraints | target, width/height prefs, flex values | | `ui_add_canvas_group` | Add CanvasGroup | target, `alpha?`, `interactable?`, `blocksRaycasts?` | | `ui_add_mask` | Add `Mask` or `RectMask2D` | target, `maskType?`, `showMaskGraphic?` | | `ui_add_outline` | Add Shadow/Outline effect | target, `effectType?`, `r/g/b/a?`, `distanceX/Y?` | | `ui_configure_selectable` | Configure transitions/navigation/colors | target, `transition?`, `navigationMode?`, color values |
High-Frequency Defaults
Canvas and Parenting
- `ui_create_canvas` defaults to `ScreenSpaceOverlay`.
- Most create skills accept `parent`; if omitted, Unity will create under the active Canvas or scene root depending on the implementation context.
- For reusable menu groups, create the Canvas once, then create a Panel and put all child controls under that panel.
Common Create Parameters
| Skill | High-frequency fields | |-------|-----------------------| | `ui_create_button` | `text`, `width`, `height` | | `ui_create_text` | `text`, `fontSize`, `r/g/b` | | `ui_create_image` | `spritePath`, `width`, `height` | | `ui_create_slider` | `minValue`, `maxValue`, `value` | | `ui_create_toggle` | `label`, `isOn` | | `ui_create_dropdown` | `options` | | `ui_create_scrollview` | `horizontal`, `vertical`, `movementType` |
Important:
- Most create skills do **not** take explicit `x/y` placement.
- Create first, then place/anchor with `ui_set_rect`, `ui_set_anchor`, or `ui_layout_children`.
Full RectTransform Editing
Use `ui_set_rect_transform` when you need Inspector-level RectTransform coverage instead of a preset.
| Skill | Parameters | |-------|------------| | `ui_get_rect_transform` | `name`, `instanceId`, `path` | | `ui_set_rect_transform` | target + `anchorMinX/Y`, `anchorMaxX/Y`, `pivotX/Y`, `anchoredPosX/Y/Z`, `sizeDeltaX/Y`, `offsetMinX/Y`, `offsetMaxX/Y`, `localPosX/Y/Z`, `localRotX/Y/Z`, `localScaleX/Y/Z`, `width`, `height` | | `ui_set_rect_transform_batch` | `items` JSON array with the same per-target fields |
ui_ge
Read more
name: unity-ui description: Create and lay out Unity UGUI screens. 创建与布局 Unity UGUI 界面。
Triggers
- Building UGUI screens
- Adding Canvas elements
- Arranging UI layout
- 搭建 UGUI 界面、添加 Canvas 元素、排布 UI 布局
Unity UI Skills
Use this module for Unity UGUI / Canvas workflows. It is separate from UI Toolkit.
> **Batch-first**: Prefer `ui_create_batch` when creating `2+` UI elements.
Operating Mode
- **Approval**:查询类 skill(`ui_find_all`,源码标 `SkillMode.SemiAuto`)直接执行;其余创建/修改类(`ui_create_*` / `ui_set_*` / `ui_add_*` / `ui_layout_children` / `ui_align_selected` 等,标 `SkillMode.FullAuto`)需用户 grant,grant 后服务端一步执行返结果。
- **Auto / Bypass**:所有 skill 直接执行;Auto 走 AI 自我评估,Bypass 全放行。
- 本模块**不含** Delete / PlayMode / Reload / 高危 skill,无 Bypass-only 拦截项。删除 UI 节点请走 `gameobject` 模块。
**DO NOT** (common hallucinations):
- `ui_add_canvas` does not exist -> use `ui_create_canvas`
- `ui_create_label` does not exist -> use `ui_create_text`
- `ui_create_checkbox` does not exist -> use `ui_create_toggle`
- `ui_set_color` does not exist -> use `component_set_property` on `Image`/`Text`, or the dedicated UI property skills when available
- Do not confuse UGUI (`ui`) with UI Toolkit (`uitoolkit`)
**Routing**:
- For UXML/USS/UIDocument -> use `uitoolkit`
- For XR-compatible world-space Canvas conversion -> use `xr_setup_ui_canvas`
- For text updates after creation -> use `ui_set_text`
- For layout and alignment -> use `ui_layout_children`, `ui_align_selected`, `ui_distribute_selected`
Skills
Create Skills
| Skill | Use | Key parameters | |-------|-----|----------------| | `ui_create_canvas` | Create Canvas | `name?`, `renderMode?` | | `ui_create_panel` | Create panel container | `name?`, `parent?`, `r/g/b/a?` | | `ui_create_button` | Create button | `name?`, `parent?`, `text?`, `width/height?` | | `ui_create_text` | Create text label | `name?`, `parent?`, `text?`, `fontSize?`, `r/g/b?` | | `ui_create_image` | Create image | `name?`, `parent?`, `spritePath?`, `width/height?` | | `ui_create_inputfield` | Create input field | `name?`, `parent?`, `placeholder?`, `width/height?` | | `ui_create_slider` | Create slider | `name?`, `parent?`, `minValue?`, `maxValue?`, `value?` | | `ui_create_toggle` | Create toggle | `name?`, `parent?`, `label?`, `isOn?` | | `ui_create_dropdown` | Create dropdown | `name?`, `parent?`, `options?`, `width/height?` | | `ui_create_scrollview` | Create ScrollRect hierarchy | `name?`, `parent?`, `width/height?`, `horizontal?`, `vertical?` | | `ui_create_rawimage` | Create RawImage | `name?`, `parent?`, `texturePath?`, `width/height?` | | `ui_create_scrollbar` | Create scrollbar | `name?`, `parent?`, `direction?`, `value?`, `size?` | | `ui_create_batch` | Create multiple UI elements | `items` (`JSON` string array) |
Query and Layout Skills
| Skill | Use | Key parameters | |-------|-----|----------------| | `ui_find_all` | Find scene UI elements | `uiType?`, `limit?` | | `ui_set_text` | Update text content | `name`, `text` | | `ui_set_rect` | Set RectTransform size/offsets | target, `width`, `height`, `posX`, `posY`, `left/right/top/bottom?` | | `ui_get_rect_transform` | Read full RectTransform data | target | | `ui_set_rect_transform` | Set full RectTransform data | anchors, pivot, offsets, local transform, width/height | | `ui_set_rect_transform_batch` | Set full RectTransform data for multiple elements | `items` | | `ui_set_anchor` | Apply anchor preset | target, `preset?`, `setPivot?` | | `ui_layout_children` | Vertical/Horizontal/Grid layout | target, `layoutType?`, `spacing?` | | `ui_align_selected` | Align current selection | `alignment?` | | `ui_distribute_selected` | Distribute current selection | `direction?` |
Property and Effect Skills
| Skill | Use | Key parameters | |-------|-----|----------------| | `ui_set_image` | Image type/fill/sprite | target, `type?`, `fillMethod?`, `fillAmount?`, `spritePath?` | | `ui_add_layout_element` | Add LayoutElement constraints | target, width/height prefs, flex values | | `ui_add_canvas_group` | Add CanvasGroup | target, `alpha?`, `interactable?`, `blocksRaycasts?` | | `ui_add_mask` | Add `Mask` or `RectMask2D` | target, `maskType?`, `showMaskGraphic?` | | `ui_add_outline` | Add Shadow/Outline effect | target, `effectType?`, `r/g/b/a?`, `distanceX/Y?` | | `ui_configure_selectable` | Configure transitions/navigation/colors | target, `transition?`, `navigationMode?`, color values |
High-Frequency Defaults
Canvas and Parenting
- `ui_create_canvas` defaults to `ScreenSpaceOverlay`.
- Most create skills accept `parent`; if omitted, Unity will create under the active Canvas or scene root depending on the implementation context.
- For reusable menu groups, create the Canvas once, then create a Panel and put all child controls under that panel.
Common Create Parameters
| Skill | High-frequency fields | |-------|-----------------------| | `ui_create_button` | `text`, `width`, `height` | | `ui_create_text` | `text`, `fontSize`, `r/g/b` | | `ui_create_image` | `spritePath`, `width`, `height` | | `ui_create_slider` | `minValue`, `maxValue`, `value` | | `ui_create_toggle` | `label`, `isOn` | | `ui_create_dropdown` | `options` | | `ui_create_scrollview` | `horizontal`, `vertical`, `movementType` |
Important:
- Most create skills do **not** take explicit `x/y` placement.
- Create first, then place/anchor with `ui_set_rect`, `ui_set_anchor`, or `ui_layout_children`.
Full RectTransform Editing
Use `ui_set_rect_transform` when you need Inspector-level RectTransform coverage instead of a preset.
| Skill | Parameters | |-------|------------| | `ui_get_rect_transform` | `name`, `instanceId`, `path` | | `ui_set_rect_transform` | target + `anchorMinX/Y`, `anchorMaxX/Y`, `pivotX/Y`, `anchoredPosX/Y/Z`, `sizeDeltaX/Y`, `offsetMinX/Y`, `offsetMaxX/Y`, `localPosX/Y/Z`, `localRotX/Y/Z`, `localScaleX/Y/Z`, `width`, `height` | | `ui_set_rect_transform_batch` | `items` JSON array with the same per-target fields |
ui_ge
REST API-based AI-driven Unity Editor Automation Engine Let AI control Unity scenes directly through Skills 🎉 We are now indexed by DeepWiki! Got questions? Check out the AI-generated docs → The current official maintenance baseline is Unity 2022.3+.
Other skills on unity-skills.
- /addressables-design
Source-anchored design rules for Unity Addressables 1.22.3/2.9.1. 为 Unity Addressables 1.22.3/2.9.1 提供源码锚定的设计规则。
Open skill - /adr
Record Unity architecture decisions (ADR) with rationale. 记录 Unity 架构决策(ADR)与理由。
Open skill - /animator
Edit Unity Animator Controllers and drive runtime parameters. 编辑 Unity Animator Controller 并驱动运行时参数。
Open skill - /architecture
Advise on Unity gameplay and system architecture. 为 Unity 游戏与系统架构提供建议。
Open skill - /asmdef
Advise on Unity assembly definitions (asmdef). 为 Unity 程序集定义(asmdef)提供建议。
Open skill - /asset
Manage Unity AssetDatabase operations. 管理 Unity AssetDatabase 操作。
Open skill

