unity-yaml-editing

Repairs Unity serialized YAML files by fixing GUIDs, fileID references, and merge conflicts.

Updated Jan 29, 2026
One-click install
npx skills add https://github.com/Dylan8865/FinalYearProject --skill unity-yaml-editing-dylan8865
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: unity-yaml-editing
Source: https://github.com/Dylan8865/FinalYearProject/tree/main/GameDev/Tester/.agents/skills/unity-skills/skills/yaml-editing
Command: npx skills add https://github.com/Dylan8865/FinalYearProject --skill unity-yaml-editing-dylan8865

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? When Unity scenes, prefabs, or assets break due to missing script references, corrupted GUIDs, or Git merge conflicts, the Editor and REST APIs often cannot deserialize the files, leaving hand-editing the serialized YAML as the only recovery path. ## Core Features & Use Cases - Reference and fileID Repair: Fix broken m_Script GUID references in .unity and .prefab files after scripts are renamed, moved, or left missing by compile failures. - .meta and GUID Safety: Detect pseudo-random GUIDs at risk of collision, regenerate them with uuid4, and update every referencing file consistently. - ProjectSettings and Merge Conflicts: Patch hidden ProjectSettings fields with no public API and resolve Git conflicts in .unity/.prefab files block by block. - Use Case: A teammate renamed a MonoBehaviour script and now your scene shows missing components. Locate the script's current GUID in its .cs.meta, update the m_Script reference in the scene YAML, and reimport to validate. ## Quick Start Ask the assistant to repair the broken script references in your Unity scene file by hand-editing the serialized YAML and updating the m_Script GUIDs.

Frequently Asked Questions about unity-yaml-editing

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fix a missing script reference in a Unity prefab?▼

Open the script's .cs.meta file to read its current GUID, then find the m_Script entry in the prefab YAML and set its guid to that value while keeping fileID 11500000 and type 3. Reimport the asset in Unity to confirm the component resolves.

How to resolve Git merge conflicts in Unity scene files?▼

Unity YAML is line-mergeable because each object is an independent --- !u!<classID> &<fileID> block. Resolve per block, taking the changed side for single-side edits and doing a true 3-way merge for blocks changed on both sides, then verify every referenced fileID still has a defining block.

When should I hand-edit Unity YAML instead of using the Editor?▼

Only as a last resort: when compile failures prevent deserialization, when editing .meta files or hidden ProjectSettings fields with no API, or when resolving merge conflicts. For normal object, prefab, or scene work, use the Editor or REST-based tooling instead.

Why does deleting a component block corrupt my Unity prefab?▼

Each component block has a matching entry in the owner GameObject's m_Component list. Removing the --- !u!114 block without deleting its {component: {fileID: N}} entry leaves a dangling reference that breaks the GameObject, so both must be removed together.

Can I change a Unity asset GUID safely?▼

Yes, but only by generating a uuid4 value programmatically and updating every reference across all .asset, .prefab, .unity, and .meta files in the same change. Grep the whole project for the old GUID first, and never hand-write GUID values.