Description: I am following the official C# plugin example (smart-duplicate-csharp), but the WebSocket connection fails because the port is not active.
Environment:
Lunacy Version: 13
OS: Windows
Steps to Reproduce:
Enable Plugin Developer Mode in Lunacy.
Run netstat -ano | findstr 314 in Command Prompt.
Result: Only port 31415 (HTTP) is listening. Port 31416 (WebSocket) does not exist.
Expected Result: Both 31415 and 31416 should be active as per the QUICK_START_UI.md documentation to allow plugin registration and event handling.
Impact: Plugins cannot receive selection events or initialize UI, rendering the official C# samples unusable.
WebSocket port 31416 only opens when Lunacy detects a plugin that requires it. Ensure your plugin (e.g., one with UI or event handling) is in the correct folder, then restart Lunacy completely. The port should open after the restart.
Currently, Lunacy does not have a dedicated Developer mode for live testing or debugging from external environments like VS Code, this workflow isn’t supported yet. The intended approach is: take a ready-made plugin example, modify it as needed, build it, and then run it in Lunacy (no step‑by‑step debugging or live reload).
We recognize that a proper dev mode (creating a temporary plugin and enabling direct WebSocket requests) would be helpful, but this is only under consideration and won’t be implemented anytime soon.
For now, the only option is to build your plugin and test it directly in Lunacy without live debugging tools.
I noticed a discrepancy in the documentation. The GitHub README says to use %APPDATA% (Roaming), but after testing on Lunacy 13, the plugin only works and opens Port 31416 when placed in %LOCALAPPDATA%\Icons8\Lunacy\Plugins.
If I use the Roaming path, the UI might show the plugin, but the WebSocket server fails to initialize (WinError 1225). You might want to double-check if the plugin path logic has changed in recent versions