Usage

In the editor#

Where Command What it does
Tools > Project Context Export Project Context Exports everything in scope. Assets whose files have not changed since the last export are skipped, so repeat runs are fast.
Tools > Project Context Rebuild Project Context Exports every asset again.
Tools > Project Context Open Project Context Folder Opens the output folder.
Content Browser, right-click a folder Export Project Context for Folder Exports only that folder and refreshes PROJECT_CONTEXT.md.
Content Browser, right-click assets Copy as Text Puts the selected assets on the clipboard as Markdown, ready to paste into a chat or terminal agent.
Content Browser, right-click assets Export Project Context for Selection Exports only the selected assets.

A notification shows how many assets were exported, with a link to the folder.

Updates on save#

Once the project has been exported (there is a manifest.json in the output folder), saving an asset re-exports it and refreshes PROJECT_CONTEXT.md and dependencies.md a moment later. Deleting or renaming an asset removes its old files. Turn this off with Project Settings > Plugins > Project Context Export > Export On Save.

Settings#

Project Settings > Plugins > Project Context Export. They are saved in Config/DefaultProjectContextExport.ini, so the whole team and your CI use the same settings.

Setting Default Meaning
Output Directory empty (Saved/ProjectContext) Relative paths start at the project folder. Use ProjectContext to keep the files next to your source, or leave it in Saved to keep them out of version control.
Write Markdown / Write Json on / on Which formats to write.
Graph Nodes In Json on Every Blueprint node with its pins and links in the JSON files. Turn off for smaller files.
Included Paths /Game Content folders to export.
Include Project Plugins on Also export content of plugins in the project's Plugins folder.
Excluded Paths none Folders to skip, such as /Game/ThirdParty or /Game/Developers.
Export On Save on See above.
Actor Properties on List each level actor's changed properties. Off gives a shorter actor list.
Max Actors Per Level 2000 Actors listed per level; the class counts always include all of them.
Max Properties Per Object, Max Value Length, Max Expression Depth, Max Table Rows 64, 400, 6, 5000 Caps that keep single files readable.

Changing a setting that affects the output makes the next export a full one.

From the command line#

The commandlet exports without opening the editor window, for coding agents and CI:

# Windows
UnrealEditor-Cmd.exe C:/Projects/MyGame/MyGame.uproject -run=ProjectContextExport -Incremental -unattended -nullrhi

# macOS
"/Users/Shared/Epic Games/UE_5.8/Engine/Binaries/Mac/UnrealEditor-Cmd" ~/Projects/MyGame/MyGame.uproject -run=ProjectContextExport -Incremental -unattended -nullrhi
Option Meaning
-Incremental Skip assets whose files have not changed since the last export.
-Paths=/Game/UI,/Game/Maps/L_Main Export only these folders or packages instead of the configured scope.
-Output=Dir Write somewhere else. Relative paths start at the project folder.

The exit code is 0 when every asset exported and 1 when any failed; failures are logged with LogProjectContextExport: Error. The commandlet reads what is saved on disk, so save in the editor first if it is open.

From Python or Editor Utility Blueprints#

import unreal
unreal.PceLibrary.export_project_context(True)                       # incremental
unreal.PceLibrary.export_project_context_paths(["/Game/UI"], False)
text = unreal.PceLibrary.asset_to_text(unreal.load_asset("/Game/Demo/BP_Door"))
folder = unreal.PceLibrary.get_project_context_directory()

The same four functions are in Editor Utility Blueprints under Project Context Export.

Point your agent at it#

Add a line like this to the file your agent reads first (AGENTS.md or your agent's own instructions file):

## Unreal assets
Blueprints, levels, data tables, materials and widgets are binary. Their text export is in
Saved/ProjectContext/: start with Saved/ProjectContext/PROJECT_CONTEXT.md. The asset /Game/A/B is
described in Saved/ProjectContext/assets/Game/A/B.md. If it looks stale, run:
UnrealEditor-Cmd <Project>.uproject -run=ProjectContextExport -Incremental -unattended -nullrhi

If you want the files in version control so teammates and cloud agents see them without Unreal installed, set Output Directory to a folder outside Saved (for example ProjectContext) and commit it. Only changed assets rewrite their files, so diffs stay small.