- Fix exception handling to catch URLError before generic Exception
- Add WebSocket fallback attempt when HTTP endpoint fails
- Note: WebSocket fallback may not work as Firefox uses different protocol than CDP
- Known issue: HTTP /json/list endpoint closes connection even when DevTools shows connected
- Add get_tabs_via_websocket() to query tabs via WebSocket when HTTP /json/list fails
- Update get_tabs_via_rdp() to try WebSocket fallback
- Update get_tab_html_async() to use WebSocket fallback for getting tab WebSocket URLs
- Known issue: HTTP endpoint may not respond even when DevTools shows connected
- Replace asyncio.get_event_loop() with asyncio.get_running_loop()
- Add better error messages when HTTP endpoint fails
- Show available tab IDs when tab not found
- Handle HTTP endpoint connection failures gracefully
- Document new 'content' command for fetching HTML from tabs
- Add troubleshooting section for HTTP endpoint issues
- Add instructions for running from Nix development shell
- Note requirement for 'nix develop -c $(which fish)'
- Set home-manager.backupFileExtension to 'backup'
- Automatically backs up files before home-manager overwrites them
- Prevents data loss when managing Firefox profiles.ini
- Enable devtools.debugger.remote-enabled
- Set devtools.debugger.remote-port to 6000
- Enable devtools.chrome.enabled (required for remote debugging)
- Set devtools.debugger.prompt-connection to false (disable permission prompts)
- Add WebSocket connection functions for Firefox Remote Debugging Protocol
- Implement CDP Runtime.evaluate protocol communication
- Add 'content' command to fetch HTML from tabs via WebSocket
- Add get_tab_html() function to orchestrate HTML retrieval
- Increase connection timeout for RDP requests
- Remove trailing whitespaces from all .nix files
- Remove trailing whitespaces from shell scripts
- Remove trailing whitespaces from README files
- Improves code consistency and follows best practices
- Add EDITOR and VISUAL environment variables to fish shell init
- Add system-level EDITOR and VISUAL variables for macOS and WSL
- Ensures nvim is used as default editor for git, system tools, and applications
- Maintains existing neovim defaultEditor configuration
- Add cursor-cli package to system packages in macos.nix
- Provides cursor-agent binary for Cursor AI agent functionality
- cursor-agent is now available at /run/current-system/sw/bin/cursor-agent
- Replace cursor-cli with code-cursor package (the correct Nix package)
- Remove manually installed Cursor.app from /Applications/
- Remove broken symlink from /usr/local/bin/cursor
- Backup Cursor user data to ~/dotfiles/backups/cursor/
- Nix-managed cursor (v1.5.11) now working correctly from /run/current-system/sw/bin/cursor
- Add 'theme status' command to show current theme status across platforms
- Add 'theme toggle' command to switch between light and dark themes
- Improve toggle logic to read current theme from platform-specific sources
- Update documentation to include new commands
- Maintain backward compatibility with existing theme light/dark commands