Windows Remote Desktop Connection Doctor
Diagnoses slow, stuck, or failing Windows App (Remote Desktop / AVD / W365 / direct PC) connections on macOS using transport-protocol and log evidence.
UtilitiesIntermediate★ 1,323⑂ 212AI score 8/10Last updated: Aug 8, 2026
What it does
Walks through an evidence-driven diagnosis of Windows App (formerly Microsoft Remote Desktop) connection problems on macOS — for Azure Virtual Desktop, Windows 365, and direct PC-by-hostname sessions.
- Identifies the active transport: UDP Shortpath vs. WebSocket/TCP fallback through the gateway
- Collects network evidence with
ifconfig,netstat -rn,scutil --proxy, andlsofto spot VPN/proxy TUN interference (utun devices, 198.18.0.x source IPs) - Parses Windows App logs under
~/Library/Containers/com.microsoft.rdc.macos/..., aggregating events by session GUID and matching signatures likeFetchClientOptions exception: Request timed out, certificate validation failures, andOneAuthError_InteractionRequired - Sorts findings into six root-cause categories: proxy/VPN interference, ISP UDP restriction, client health-check failure, Shortpath disabled server-side, stale Microsoft work/school account poisoning auth, and Windows Update reboots
- Ships
scripts/probe_rdp_server.pyfor a credential-free RDP + TLS reachability probe
Who it's for
- Mac users on corporate VDI (AVD/W365) suffering high latency or freezes
- Remote workers whose direct-PC session hangs on "Configuring remote PC..."
- Anyone running Clash, ShadowRocket, or Tailscale alongside RDP
- IT helpdesk and infra engineers who need log-based proof instead of guesswork
Examples
- "Connection Info shows WebSocket with 165 ms RTT" — the skill checks utun routing and STUN/TURN log lines, recommends
DOMAIN-SUFFIX,wvd.microsoft.com,DIRECTproxy rules, then verifies UDP sockets withlsof -i UDP. - "My home PC session is stuck at Configuring remote PC" — the probe script proves port 3389 and TLS are healthy, then
UserCancelled(8)plus "no valid refresh tokens" in the log points to removing an expired Microsoft account and relaunching the app. - "A working session dropped and won't reconnect" — correlates
CMSTATE_DROPPEDwith the PC'sLastBootUpTimeand Event ID 1074 to blame a Windows Update restart, and suggests configuring active hours.
· · · Install guide · · ·
Install in the Claude app (no terminal)
- Download the ZIP with the button below.
- In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
- Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
Install in Claude Code
Let Claude do it — paste this into Claude Code
Install the skill I found on Claude Skill Mart. Copy the windows-remote-desktop-connection-doctor folder from the GitHub repo daymade/claude-code-skills into my ~/.claude/skills/windows-remote-desktop-connection-doctor/. When it's done, tell me in one line what this skill can do.
Install with a command instead
git clone https://github.com/daymade/claude-code-skills.git && mkdir -p ~/.claude/skills && cp -r claude-code-skills/windows-remote-desktop-connection-doctor ~/.claude/skills/⚠ This is a third-party skill. Check the source repository before installing.
- Open Terminal on your Mac.
- Clone the repository:
git clone https://github.com/daymade/claude-code-skills.git - Create the skills directory if needed:
mkdir -p ~/.claude/skills - Copy just this skill:
cp -r claude-code-skills/windows-remote-desktop-connection-doctor ~/.claude/skills/ - Verify with
ls ~/.claude/skills/windows-remote-desktop-connection-doctor— you should see SKILL.md, scripts, and references. - Restart Claude Code, then ask something like "My Windows App RDP session is slow — diagnose it" to trigger the skill.
- Make sure
python3is available (built into macOS or via Xcode Command Line Tools) so the agent can runpython3 scripts/probe_rdp_server.py <host> 3389.
View source on GitHub ↗License: MIT