SF
STS Forge

Asset Management

Asset lifecycle verbs: rename-asset, duplicate-asset, delete-asset, dependencies, referencers.

Back to AI Reference | Back to Index

Verbs for renaming, duplicating, deleting, and querying asset dependencies.


rename-asset#

Rename or move an asset within the content browser. Can rename, move, or both in a single operation. Fixups update all hard references automatically.

Category: Asset Management (write)

Args:

Arg Required Description
-asset= Yes Source asset path (e.g., /Game/Blueprints/BP_OldName)
-newname= No New asset name (required if -newpath not given)
-newpath= No New folder path (required if -newname not given)

You can provide both -newname and -newpath to rename and move simultaneously. At least one of -newname or -newpath must be provided.

Examples:

# Rename an asset in place
-verb=rename-asset -asset=/Game/Blueprints/BP_OldName -newname=BP_NewName

# Move an asset to a different folder (keep the same name)
-verb=rename-asset -asset=/Game/Blueprints/BP_Player -newpath=/Game/Blueprints/Characters

# Rename and move simultaneously
-verb=rename-asset -asset=/Game/Blueprints/BP_OldName -newname=BP_NewName -newpath=/Game/Blueprints/Characters

Output:

{
    "success": true,
    "data": {
        "oldPath": "/Game/Blueprints/BP_OldName",
        "newPath": "/Game/Blueprints/Characters/BP_NewName"
    }
}

duplicate-asset#

Duplicate an asset. Idempotent: succeeds if the destination asset already exists with the same source.

Category: Asset Management (write)

Args:

Arg Required Description
-asset= Yes Source asset path to duplicate
-newname= Yes Name for the duplicate
-newpath= No Destination folder (defaults to same folder as source)

Examples:

# Duplicate in the same folder
-verb=duplicate-asset -asset=/Game/Blueprints/BP_Player -newname=BP_Player_Copy

# Duplicate into a different folder
-verb=duplicate-asset -asset=/Game/Blueprints/BP_Player -newname=BP_Player_Backup -newpath=/Game/Backups

# Duplicate a DataAsset
-verb=duplicate-asset -asset=/Game/Data/DA_WeaponRifle -newname=DA_WeaponShotgun -newpath=/Game/Data

Output:

{
    "success": true,
    "data": {
        "sourcePath": "/Game/Blueprints/BP_Player",
        "newPath": "/Game/Blueprints/BP_Player_Copy"
    }
}

delete-asset#

Delete an asset. Without -force, the verb checks for incoming references and blocks deletion if any exist. With -force, deletes regardless of referencers. Idempotent: succeeds if the asset does not exist.

Category: Asset Management (write)

Args:

Arg Required Description
-asset= Yes Asset path to delete
-force No Flag (presence-only): skip referencer check and delete unconditionally

Examples:

# Safe delete (checks for references first)
-verb=delete-asset -asset=/Game/Blueprints/BP_Unused

# Force delete (skip referencer check)
-verb=delete-asset -asset=/Game/Blueprints/BP_Deprecated -force

Output (success):

{
    "success": true,
    "data": {
        "deletedPath": "/Game/Blueprints/BP_Unused"
    }
}

Output (blocked by references):

{
    "success": false,
    "error": "Asset has incoming references. Use -force to delete anyway.",
    "errorCode": "DELETE_BLOCKED",
    "details": {
        "reason": "HAS_REFERENCERS",
        "referencers": [
            "/Game/Maps/MainLevel",
            "/Game/Blueprints/BP_GameMode"
        ]
    }
}

dependencies#

List assets that this asset depends on. Read-only query against the Asset Registry dependency graph.

Category: Asset Management (read)

Args:

Arg Required Description
-asset= Yes Asset path to query
-type= No Filter: hard, soft, or all (default: all)

Examples:

# List all dependencies
-verb=dependencies -asset=/Game/Blueprints/BP_Player

# List only hard dependencies
-verb=dependencies -asset=/Game/Blueprints/BP_Player -type=hard

# List only soft dependencies
-verb=dependencies -asset=/Game/Data/DA_WeaponRifle -type=soft

Output:

{
    "success": true,
    "data": {
        "asset": "/Game/Blueprints/BP_Player",
        "type": "all",
        "count": 5,
        "dependencies": [
            { "path": "/Game/Meshes/SK_PlayerMesh", "type": "hard" },
            { "path": "/Game/Animations/ABP_Player", "type": "hard" },
            { "path": "/Game/Materials/MI_PlayerSkin", "type": "hard" },
            { "path": "/Game/Data/DA_DefaultLoadout", "type": "soft" },
            { "path": "/Game/Effects/NS_SpawnVFX", "type": "soft" }
        ]
    }
}

referencers#

List assets that reference this asset. Read-only query against the Asset Registry dependency graph. Useful for checking whether an asset is safe to delete or rename.

Category: Asset Management (read)

Args:

Arg Required Description
-asset= Yes Asset path to query
-type= No Filter: hard, soft, or all (default: all)

Examples:

# List all referencers
-verb=referencers -asset=/Game/Blueprints/BP_Player

# Check hard references before deleting
-verb=referencers -asset=/Game/Blueprints/BP_Deprecated -type=hard

# Check who soft-references a data asset
-verb=referencers -asset=/Game/Data/DA_WeaponRifle -type=soft

Output:

{
    "success": true,
    "data": {
        "asset": "/Game/Blueprints/BP_Player",
        "type": "all",
        "count": 3,
        "referencers": [
            { "path": "/Game/Maps/MainLevel", "type": "hard" },
            { "path": "/Game/Blueprints/BP_GameMode", "type": "hard" },
            { "path": "/Game/UI/WBP_PlayerHUD", "type": "soft" }
        ]
    }
}

Notes:

  • Combine referencers with delete-asset to safely remove assets: query referencers first, then delete only when the count is zero.
  • The delete-asset verb without -force performs this check automatically.