unity-yaml-editing

Guides safe hand-editing of Unity serialized YAML when REST APIs cannot reach.

Updated Aug 18, 2026
One-click install
npx skills add https://github.com/ethanJPope/Our-Main-Hackathon-Game --skill unity-yaml-editing-ethanjpope
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: unity-yaml-editing
Source: https://github.com/ethanJPope/Our-Main-Hackathon-Game/tree/main/.agents/skills/unity-skills/skills/yaml-editing
Command: npx skills add https://github.com/ethanJPope/Our-Main-Hackathon-Game --skill unity-yaml-editing-ethanjpope

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? When Unity scripts fail to compile, .meta GUIDs break, or merge conflicts corrupt .unity and .prefab files, the Editor and REST APIs become unavailable, leaving raw YAML text as the only repair path. This Skill provides the operational rules for editing that YAML without corrupting serialization. ## Core Features & Use Cases - Reference and fileID Repair: Fix broken m_Script GUID references and missing components by correcting guid/fileID pairs in prefabs and scenes. - .meta and GUID Safety: Detect pseudo-random GUIDs, regenerate them with uuid4, and update every referencing file in the same change. - ProjectSettings and Merge Conflicts: Patch hidden ProjectSettings fields and resolve Git conflicts in .unity/.prefab files block-by-block. - Use Case: A renamed C# script leaves a prefab with a missing component. Read the script's current GUID from its .cs.meta, update the prefab's m_Script guid entry, and reimport to validate. ## Quick Start Ask the AI to repair the broken m_Script GUID reference in a Unity prefab by reading the script's .meta file and updating the YAML safely.

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?

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

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

Hand-edit only as a last resort: when a compile failure blocks 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 APIs.

How do I safely change a Unity asset GUID?

Generate a new GUID with uuid4, never by hand, then grep the entire project for the old GUID across .asset, .prefab, .unity, and .meta files. Update every reference in the same change, since a partial update leaves dangling references.

How do I resolve Git merge conflicts in Unity scene files?

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

What happens if I delete a component block but not its reference?

Deleting a MonoBehaviour's --- !u!114 block without removing its matching entry in the owner GameObject's m_Component list corrupts the file. Both the object block and the component reference must be removed together.