# Unity Editor Toolkit - Asset Database & Editor Utilities Commands Complete reference for Asset Database refresh, recompilation, and asset reimport commands. **Last Updated**: 2025-01-13 --- ## cd && node .unity-websocket/uw editor refresh Refresh Unity AssetDatabase (generates/updates meta files, triggers compilation). **Usage:** ```bash cd && node .unity-websocket/uw editor refresh [options] ``` **Options:** ``` --json Output in JSON format --timeout Connection timeout in milliseconds (default: 30000) -h, --help Display help for command ``` **⚠️ Important Note:** After running `refresh`, you should check Unity Editor for compilation status. Unity's incremental compilation will automatically compile changed assemblies. **Examples:** ```bash # Refresh AssetDatabase cd && node .unity-websocket/uw editor refresh # Get JSON output cd && node .unity-websocket/uw editor refresh --json ``` --- ## cd && node .unity-websocket/uw editor recompile Request script recompilation. **Usage:** ```bash cd && node .unity-websocket/uw editor recompile [options] ``` **Options:** ``` --json Output in JSON format --timeout Connection timeout in milliseconds (default: 30000) -h, --help Display help for command ``` **⚠️ Important Note:** Unity's incremental compilation automatically recompiles changed assemblies. This command forces a recompilation check. Check Unity Editor for compilation status after running. **Examples:** ```bash # Request recompilation cd && node .unity-websocket/uw editor recompile # Get JSON output cd && node .unity-websocket/uw editor recompile --json ``` --- ## cd && node .unity-websocket/uw editor reimport Reimport specific asset (triggers recompilation for that Assembly). **Usage:** ```bash cd && node .unity-websocket/uw editor reimport [options] ``` **Arguments:** ``` Asset path relative to Assets folder (e.g., "XLua" or "Scripts/Player.cs") ``` **Options:** ``` --json Output in JSON format --timeout Connection timeout in milliseconds (default: 30000) -h, --help Display help for command ``` **⚠️ Important Note:** After running `reimport`, check Unity Editor for reimport and compilation status. **Examples:** ```bash # Reimport folder cd && node .unity-websocket/uw editor reimport "XLua" # Reimport specific asset cd && node .unity-websocket/uw editor reimport "Scripts/Player.cs" # Reimport .asmdef (recompiles specific Assembly) cd && node .unity-websocket/uw editor reimport "MyPlugin/Editor/MyPlugin.Editor.asmdef" ``` --- ## cd && node .unity-websocket/uw editor execute Execute a static method marked with `[ExecutableMethod]` attribute. **Usage:** ```bash cd && node .unity-websocket/uw editor execute [options] ``` **Arguments:** ``` Command name to execute (e.g., reinstall-cli) ``` **Options:** ``` --json Output in JSON format --timeout Connection timeout in milliseconds (default: 30000) -h, --help Display help for command ``` **Examples:** ```bash # Reinstall CLI cd && node .unity-websocket/uw editor execute reinstall-cli # List available commands first cd && node .unity-websocket/uw editor list # Get JSON output cd && node .unity-websocket/uw editor execute reinstall-cli --json ``` **Security:** Only methods explicitly marked with `[ExecutableMethod]` attribute can be executed. This prevents arbitrary code execution. --- ## cd && node .unity-websocket/uw editor list List all executable methods available via `editor execute` command. **Usage:** ```bash cd && node .unity-websocket/uw editor list [options] ``` **Options:** ``` --json Output in JSON format --timeout Connection timeout in milliseconds (default: 30000) -h, --help Display help for command ``` **Examples:** ```bash # List all executable methods cd && node .unity-websocket/uw editor list # Get JSON output cd && node .unity-websocket/uw editor list --json ``` **Output Format:** ``` ✓ Found 1 executable method(s): reinstall-cli Reinstall Unity Editor Toolkit CLI UnityEditorToolkit.Editor.EditorServerWindow.ReinstallCLI ``` --- ## Global Options All commands support these global options: ``` -V, --version Output the version number -v, --verbose Enable verbose logging -p, --port Unity WebSocket port (overrides auto-detection) -h, --help Display help for command ``` **Examples:** ```bash # Check CLI version cd && node .unity-websocket/uw --version # Enable verbose logging cd && node .unity-websocket/uw --verbose editor refresh # Use specific port cd && node .unity-websocket/uw --port 9501 editor recompile ``` --- ## Notes ### Port Auto-Detection Unity Editor Toolkit CLI automatically detects the Unity WebSocket server port by reading `.unity-websocket/server-status.json` in the Unity project directory. You only need to specify `--port` if: - Running multiple Unity Editor instances - Server is using non-default port range ### JSON Output All commands support `--json` flag for machine-readable output. Useful for: - CI/CD pipelines - Automation scripts - Integration with other tools ### Timeout Configuration Default timeout is 30 seconds (30000ms). Increase for operations that may take longer: ```bash # Longer timeout for complex operations cd && node .unity-websocket/uw editor refresh --timeout 60000 ``` ### Error Handling Commands return appropriate exit codes: - `0`: Success - `1`: Error (connection failed, command failed, invalid parameters, etc.) Check error messages for details on failures. --- **See Also:** - [QUICKSTART.md](../../QUICKSTART.md) - Quick setup and first commands - [COMMANDS.md](./COMMANDS.md) - Complete command roadmap - [API_COMPATIBILITY.md](../../API_COMPATIBILITY.md) - Unity version compatibility - [TEST_GUIDE.md](../../TEST_GUIDE.md) - Unity C# server testing guide