Tools
ReadFile
Read project assets and files
The ReadFile tool reads asset contents and structure, providing AI agents with context about your project.
Capabilities
Text Files
Read source files, configs, and text content:
Read the contents of /Game/Config/DefaultGame.ini
Read MyScript.cpp
Show me the contents of README.mdSupports pagination for large files:
Read lines 100-200 of LargeFile.cppBlueprint Summary
Get an overview of Blueprint structure:
Read BP_PlayerCharacter
Summarize the structure of BP_Enemy
What variables does BP_GameManager have?Returns:
- Variables (names, types, defaults)
- Components (names, classes, hierarchy)
- Functions (names, parameters, return types)
- Event Dispatchers
- Graphs
Widget Blueprints
Understand widget hierarchies:
Read WBP_MainMenu
What widgets are in WBP_HUD?
Show the widget tree of WBP_InventoryReturns:
- Widget hierarchy (parent-child relationships)
- Widget types and names
- Basic properties
Animation Blueprints
Analyze AnimBlueprints:
Read ABP_Character
What state machines are in ABP_Enemy?
Show the skeletal mesh for ABP_PlayerReturns:
- State machines and states
- Transitions
- Skeletal mesh reference
- Variables
Behavior Trees
Understand AI structure:
Read BT_EnemyAI
What tasks are in BT_GuardBehavior?
Show the tree structure of BT_BossAIReturns:
- Node hierarchy (composites, tasks)
- Decorators and services
- Blackboard key references
Blackboards
View AI data definitions:
Read BB_EnemyData
What keys are in BB_PlayerState?Returns:
- Key names and types
- Key descriptions
User Defined Structs
Inspect struct definitions:
Read S_ItemData
What fields are in S_CharacterStats?Returns:
- Field names and types
- Default values
DataTables
View table data:
Read DT_WeaponData
Show all rows in DT_Items
What's in row "Sword" of DT_Weapons?Returns:
- Row names
- Column values per row
- Struct type
Output Formats
The tool returns structured data that agents can process:
{
"assetType": "Blueprint",
"variables": [
{"name": "Health", "type": "float", "default": "100.0"}
],
"components": [
{"name": "Mesh", "class": "StaticMeshComponent", "parent": "Root"}
],
"functions": [
{"name": "TakeDamage", "params": ["float Amount"], "returns": "void"}
]
}Use Cases
Understanding Before Editing
User: Add a dash ability to the player
Agent: Let me first read BP_PlayerCharacter to understand its current structure...
[Reads BP_PlayerCharacter]
Agent: I see it has CurrentStamina and MaxStamina. I'll create a Dash function that uses stamina...Finding References
User: Update all enemies to use the new health system
Agent: Let me read a few enemy Blueprints to understand the current pattern...
[Reads BP_EnemyBase, BP_EnemyMelee, BP_EnemyRanged]
Agent: They all inherit from BP_EnemyBase. I'll modify the base class...Data Analysis
User: Are the weapon stats balanced?
Agent: Let me read the weapon data table...
[Reads DT_WeaponData]
Agent: Looking at the data, the Sword has 50 damage with 1.0 attack speed, while the Dagger has 20 damage with 2.0 speed. The DPS is similar (50 vs 40), but the Sword might be slightly overpowered...