← Back to list

unity-component-design
by Sharks820
⭐ 0🍴 0📅 Jan 25, 2026
SKILL.md
name: unity-component-design description: Use when designing new Unity components (MonoBehaviours, ScriptableObjects, systems). Ensures proper architecture before writing code.
Unity Component Design
Overview
Design Unity components properly BEFORE writing code. Good architecture prevents rewrites.
When to Use
- Creating new MonoBehaviour classes
- Designing ScriptableObject data structures
- Building new game systems
- Refactoring existing components
The Process
Phase 1: Requirements Gathering
Ask these questions:
- What problem does this component solve?
- What data does it need?
- What other systems does it interact with?
- What events should it emit/receive?
- Does similar functionality exist already?
Phase 2: Architecture Decision
Choose the right type:
| Use Case | Type |
|---|---|
| Needs lifecycle (Update, Start) | MonoBehaviour |
| Static game data (monster stats) | ScriptableObject |
| Pure logic, no Unity dependencies | C# class |
| Shared state across scenes | Singleton MonoBehaviour |
| One-off data container | [System.Serializable] class |
Phase 3: Design the Component
Use the unity-architect agent:
Task: Launch unity-architect agent with:
"Design a [component type] for [purpose] that [requirements]"
The agent will provide:
- Namespace and file location
- Fields with types and attributes
- Methods and their signatures
- Events to emit
- Dependencies to inject
- Inspector setup requirements
Phase 4: Validate Design
Checklist before coding:
- Follows VeilBreakers namespace convention
- Uses [SerializeField] private, not public fields
- Has [RequireComponent] for dependencies
- Events have corresponding unsubscribe logic
- No Find() or GetComponent() in hot paths
- ScriptableObjects for config, not hardcoded values
Phase 5: Create Implementation Plan
Break into tasks:
- Create the file with class skeleton
- Add fields and serialization
- Implement lifecycle methods
- Add public API
- Wire up events
- Write tests (if applicable)
- Create prefab (if applicable)
Quick Reference
| VeilBreakers System | Namespace | Base Class |
|---|---|---|
| Combat | VeilBreakers.Combat | MonoBehaviour or ScriptableObject |
| UI | VeilBreakers.UI | MonoBehaviour |
| Data | VeilBreakers.Data | ScriptableObject |
| Core | VeilBreakers.Core | MonoBehaviour (singleton) |
| Utils | VeilBreakers.Utils | Static class |
Related Skills
superpowers:brainstorming- For exploring requirementssuperpowers:writing-plans- For implementation planning
Score
Total Score
40/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
Reviews
💬
Reviews coming soon