Learn-skills.dev ue5-editor-control
Control Unreal Engine 5 editor via HTTP commands. Spawn/delete/transform actors, manage blueprints, materials, animation blueprints, and any UObject property via reflection. Use when the user asks to create, modify, or query anything in UE5 editor, or mentions UE5, Unreal, actors, blueprints, levels, materials, animation, input, or characters.
git clone https://github.com/NeverSight/learn-skills.dev
T=$(mktemp -d) && git clone --depth=1 https://github.com/NeverSight/learn-skills.dev "$T" && mkdir -p ~/.claude/skills && cp -r "$T/data/skills-md/1103837067/ue5-editor-control/ue5-editor-control" ~/.claude/skills/neversight-learn-skills-dev-ue5-editor-control && rm -rf "$T"
data/skills-md/1103837067/ue5-editor-control/ue5-editor-control/SKILL.mdUE5 Editor Control
HTTP API for the UE5 editor. Plugin
UE5AIAssistant runs on localhost:58080.
Auto-Setup Flow (MUST follow on first use)
Every time you need to use this skill, start here:
Step 1: Check if plugin is already running
curl -s --max-time 3 http://localhost:58080/api/ping
- If response contains
→ Skip to Quick Start below"success": true - If connection refused / timeout → Plugin not running, continue to Step 2
Step 2: Find user's UE5 project
Ask the user: "你的 UE5 项目路径是什么?"
Or auto-detect (look for
.uproject files):
# macOS common locations find ~/Documents ~/Desktop ~/Projects ~/codeprojects -maxdepth 3 -name "*.uproject" 2>/dev/null
Save the project path for later use.
Step 3: Check if plugin is installed in the project
# Check if plugin exists in the UE5 project test -f "<UE5_PROJECT_PATH>/Plugins/UE5AIAssistant/UE5AIAssistant.uplugin" && echo "INSTALLED" || echo "NOT INSTALLED"
- If
→ Tell user: "插件已安装,请打开 UE5 编辑器然后告诉我"INSTALLED - If
→ Continue to Step 4NOT INSTALLED
Step 4: Install the plugin
Option A — Download prebuilt binary (recommended, no C++ required):
bash scripts/install.sh "<UE5_PROJECT_PATH>"
If this fails (no releases published yet), fall back to Option B.
Option B — Copy source code (requires UE5 C++ compilation):
The skill's GitHub repo contains the C++ source. Clone and copy:
# Clone the repo (if not already available) git clone https://github.com/1103837067/ue5-editor-control.git /tmp/ue5-editor-control # Copy plugin source to UE5 project mkdir -p "<UE5_PROJECT_PATH>/Plugins/UE5AIAssistant" cp -r /tmp/ue5-editor-control/Source "<UE5_PROJECT_PATH>/Plugins/UE5AIAssistant/" cp /tmp/ue5-editor-control/UE5AIAssistant.uplugin "<UE5_PROJECT_PATH>/Plugins/UE5AIAssistant/"
Then tell user: "插件已复制到项目中。请打开 UE5 编辑器,它会自动编译插件。打开后告诉我。"
Step 5: Verify connection
curl -s --max-time 3 http://localhost:58080/api/ping
If still failing, tell user to check:
- UE5 editor is open with the correct project
- Check Output Log for "UE5AIAssistant: HTTP server started on port 58080"
- Plugin is enabled: Edit → Plugins → search "UE5AIAssistant"
Prerequisites Summary
| Requirement | Detail |
|---|---|
| UE5 | 5.4+ installed and project created |
| OS | macOS / Windows / Linux |
| curl | Pre-installed on macOS/Linux; Git Bash on Windows |
| UE5 Editor | Must be running with plugin enabled |
| C++ (Option B only) | Only if no prebuilt binary available for your platform |
Quick Start
# Execute command (preferred for complex JSON) curl -s -X POST -H "Content-Type: application/json" \ -d '{"command":"get_actors_in_level","args":{}}' \ http://localhost:58080/api/execute # Simple commands via helper bash scripts/ue5cmd.sh exec get_actors_in_level '{}'
Response:
{ "success": true|false, "data": {...}|null, "error": "..."|null }
Common Mistakes — Do NOT
- Do NOT add nodes one-by-one — always use
batch_execute - Do NOT guess C++ function names — use
firstlist_functions - Do NOT hardcode pin names — read them from response
arraypins - Do NOT skip
after editingcompile_blueprint - Do NOT use
for complex JSON — useue5cmd.sh
directlycurl
Task Router — Read the Right Module
Based on the user's task, read only the relevant module file for detailed commands, parameters, and workflows:
| User wants to... | Read this file |
|---|---|
| Work with actors (spawn, delete, transform, properties) | references/actor.md |
| Build blueprint structure & logic (create BP, variables, functions, nodes, batch_execute) | references/blueprint.md |
| Create materials (expressions, connections, apply) | references/material.md |
| Build animation blueprints (state machines, states, transitions) | references/animation.md |
| Access any property via reflection, manage assets (create/read/write) | references/property.md |
| Set up Enhanced Input, configure character movement, build end-to-end characters | references/input-character.md |
Rules:
- Read only the module(s) needed for the current task — do NOT read all files
- If unsure which module, check the table above or read the user's intent
- Multiple tasks may require multiple modules (e.g., character = blueprint + input-character)
65 Commands Overview (for quick orientation only)
| Category | Commands | Count |
|---|---|---|
| Actor | , , , , , , , , , | 10 |
| Blueprint Structure | , , , , , , , , , , | 11 |
| Blueprint Discovery | , , | 3 |
| Blueprint Nodes | , , , , , , , | 8 |
| Material | , , , , | 5 |
| Asset | , , | 3 |
| Editor | , , , , , , | 7 |
| Animation | , , , , , , | 7 |
| Generic Reflection | , , , , , , , , , , | 11 |
Error Quick Reference
| Error pattern | Fix |
|---|---|
| Use discovery commands (, , , , ) |
| Error response lists all available pins — use the correct name |
diagnostics | Read references/blueprint.md error handling section |