ue-safety

Identify memory safety, GC, and thread-safety issues in Unreal Engine C++ code.

2|Updated Mar 17, 2026
One-click install
npx skills add https://github.com/buchananwill/ue-claude-scaffold --skill ue-safety
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ue-safety
Source: https://github.com/buchananwill/ue-claude-scaffold/tree/main/skills/ue-safety
Command: npx skills add https://github.com/buchananwill/ue-claude-scaffold --skill ue-safety

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Unreal Engine C++ reviewers need structured guidance to identify memory safety issues, GC pitfalls, and thread-safety risks that commonly cause crashes or leaks.

Core Features & Use Cases

  • Memory safety checks: identify dangling pointers, GC-root semantics, and UObject lifetime boundaries.
  • GC correctness and lifecycle reviews: proper UPROPERTY markings, rooted objects, and safe conditional references.
  • Thread-safety and move semantics guidance: detecting data races, background-thread access to UObject state, and MoveTemp misuse.
  • Ownership and destruction ordering: analysis of ownership boundaries across subsystem teardown and world lifecycle.
  • Use Case: Apply during code reviews of gameplay logic, plugins, and editor tooling to surface runtime bugs.

Quick Start

Review UE C++ code against these safety guidelines to identify memory, GC, and threading issues.

Frequently Asked Questions about ue-safety

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

FAQPage Schema
How do I identify dangling pointers and GC issues in Unreal Engine C++ code?

To identify dangling pointers and GC issues in Unreal Engine C++ code, review UObject lifecycles to enforce proper UPROPERTY markings, verify rooted objects, and validate conditional references using TWeakObjectPtr for safe lifetime boundaries.

What is the correct way to use MoveTemp in Unreal Engine to avoid memory safety risks?

Correct MoveTemp usage in Unreal Engine requires verifying that move operations do not leave dangling pointers or invalid UObject state. Review MoveTemp misuse during code reviews to ensure moved-from objects are safely destroyed or reset.

How do I prevent data races when accessing UObject state from background threads in Unreal Engine?

Prevent data races when accessing UObject state from background threads in Unreal Engine by enforcing thread-safety patterns. Review async callbacks and gameplay logic to detect background-thread access to UObject state and enforce safe destruction ordering.

Can I use this to review plugin and editor tooling code for Unreal Engine memory leaks?

Yes, you can apply these memory safety guidelines to review plugin and editor tooling code. Analyze ownership boundaries across subsystem teardown and world lifecycle to surface runtime bugs like unrooted objects and unsafe destruction ordering in UE C++.

Why does my Unreal Engine C++ code crash during async callbacks after world teardown?

Unreal Engine C++ code crashes during async callbacks after world teardown due to unsafe destruction ordering and dangling pointers. Review ownership boundaries across subsystem teardown and validate UPROPERTY and TWeakObjectPtr usage to mitigate these lifecycle issues.