* Remove legacy UI and correct priority ordering of menu items
* Remove old UI screen
Users now have the new UI alone, less confusing and more predictable
* Remove unused config files
* Remove test for window that doesn't exist
* Remove unused code
* Remove dangling .meta file
* refactor: remove client configuration step from setup wizard
* refactor: remove menu item attributes and manual window actions from Python tool sync
* feat: update minimum Python version requirement from 3.10 to 3.11
The docs have 3.12. However, feature wise it seems that 3.11 is required
* fix: replace emoji warning symbol with unicode character in setup wizard dialogs
* docs: reorganize images into docs/images directory and update references
* docs: add UI preview image to README
* docs: add run_test function and resources section to available tools list
The recent changes should close#311
* fix: add SystemRoot env var to Windows config to support Python path resolution
Closes#315
* refactor: consolidate package installation and detection into unified lifecycle manager
Duplicate code for pretty much no reason, as they both initialized there was a small chance of a race condition as well. Consolidating made sense here
* Doc fixes from CodeRabbit
* Excellent bug catch from CodeRabbit
* fix: preserve existing environment variables when updating codex server config
* Update docs so the paths match the original name
* style: fix list indentation in README-DEV.md development docs
* refactor: simplify env table handling in CodexConfigHelper by removing preservation logic
* refactor: simplify configuration logic by removing redundant change detection
Always overwrite configs
* feat: ensure config directory exists before writing config files
* feat: persist server installation errors and show retry UI instead of auto-marking as handled
* refactor: consolidate configuration helpers by merging McpConfigFileHelper into McpConfigurationHelper
* Small fixes from CodeRabbit
* Remove test because we overwrite Codex configs
* Remove unused function
* feat: improve server cleanup and process handling on Windows
- Added DeleteDirectoryWithRetry helper to handle Windows file locking with retries and readonly attribute clearing
- Implemented KillWindowsUvProcesses to safely terminate Python processes in virtual environments using WMIC
- Extended TryKillUvForPath to work on Windows, preventing file handle locks during server deletion
- Improved error messages to be more descriptive about file locking issues
- Replaced direct Directory.Delete calls with
* fix: improve TCP socket cleanup to prevent CLOSE_WAIT states
- Added proper socket shutdown sequence using Socket.Shutdown() before closing connections
- Enhanced error handling with specific catches for SocketException vs general exceptions
- Added debug logging for socket shutdown errors to help diagnose connection issues
- Restructured HandleClientAsync to ensure socket cleanup happens in the correct order
- Implemented proper socket teardown in both client handling and connection cleanup paths
* First pass at new UI
* Point to new UI
* Refactor: New Service-Based MCP Editor Window Architecture
We separate the business logic from the UI rendering of the new editor window with new services.
I didn't go full Dependency Injection, not sure if I want to add those deps to the install as yet, but service location is fairly straightforward.
Some differences with the old window:
- No more Auto-Setup, users will manually decide what they want to do
- Removed Python detection warning, we have a setup wizard now
- Added explicit path overrides for `uv` and the MCP server itself
* style: add flex-shrink and overflow handling to improve UI element scaling
* fix: update UI configuration and visibility when client status changes
* feat: add menu item to open legacy MCP configuration window
* refactor: improve editor window lifecycle handling with proper update subscription
* feat: add auto-verification of bridge health when connected
* fix: update Claude Code MCP server registration to use lowercase unityMCP name and correct the manual installation instructions
* fix: add Claude CLI directory to PATH for node/nvm environments
* Clarify how users will see MCP tools
* Add a keyboard shortcut to open the window
* feat: add server download UI and improve installation status messaging
This is needed for the Unity Asset Store, which doesn't have the Python server embedded.
* feat: add dynamic asset path detection to support both Package Manager and Asset Store installations
* fix: replace unicode emojis with escaped characters in status messages
* feat: add server package creation and GitHub release publishing to version bump workflow
* fix: add v prefix to server package filename in release workflow
* Fix download location
* style: improve dropdown and settings layout responsiveness with flex-shrink and max-width
* feat: add package.json version detection and refactor path utilities
* refactor: simplify imports and use fully qualified names in ServerInstaller.cs
* refactor: replace Unity Debug.Log calls with custom McpLog class
* fix: extract server files to temp directory before moving to final location
* docs: add v6 UI documentation and screenshots with service architecture overview
* docs: add new UI Toolkit-based editor window with service architecture and path overrides
* feat: improve package path resolution to support Package Manager and Asset Store installations
* Change Claude Code's casing back to "UnityMCP"
There's no need to break anything as yet
* fix: update success dialog text to clarify manual bridge start requirement
* refactor: move RefreshDebounce and ManageScriptRefreshHelpers classes inside namespace
* feat: add Asset Store fallback path detection for package root lookup
* fix: update server installation success message to be more descriptive
* refactor: replace Unity Debug.Log calls with custom McpLog utility
* fix: add file existence check before opening configuration file
* refactor: simplify asset path handling and remove redundant helper namespace references
* docs: update code block syntax highlighting in UI changes doc
* docs: add code block syntax highlighting for file structure example
* feat: import UnityEditor.UIElements namespace for UI components for Unity 2021 compatibility
* refactor: rename Python server references to MCP server for consistency
* fix: reset client status label color after error state is cleared
* Replace the phrase "Python server" with "MCP server"
* MInor doc clarification
* docs: add path override methods for UV and Claude CLI executables
* docs: update service locator registration method name from SetCustomImplementation to Register
* Copy UnityMcpBridge into a new MCPForUnity folder
This is to close#284
* refactor: rename UnityMcpBridge directory to MCPForUnity in docs
* chore: rename UnityMcpBridge directory to MCPForUnity across workflow files
* chore: rename UnityMcpBridge directory to MCPForUnity across all files
* refactor: update import paths from UnityMcpBridge to MCPForUnity across test files
* fix: update module import paths to use MCPForUnity instead of UnityMcpBridge
* chore: update unity-mcp package path to MCPForUnity directory
* feat: add OneTimeSetUp to initialize CommandRegistry before tests run
Hopefully fix the CI failures
* Apply recent fix to new folder
* Temporarily trigger tests to see if CI works
* Revert "Temporarily trigger tests to see if CI works"
It works!
This reverts commit 8c6eaaad07545cef047769f2c52fe506545a8161.