Check calendars, find open times, and manage Google Calendar events with confirmation before every change.
Coding
Remote Desktop
Connect to remote desktops via RDP, VNC, and SSH X11 with secure tunneling and troubleshooting.
What it does
On first use, read for integration guidelines and help the user with their question.
The skill document
Setup
On first use, read setup.md for integration guidelines and help the user with their question.
When to Use
User needs remote desktop access to another machine. Agent handles protocol selection, connection commands, tunnel setup, and troubleshooting display issues.
Architecture
Config lives in ~/remote-desktop/. See memory-template.md for structure.
~/remote-desktop/
├── memory.md # Saved hosts, preferences
└── hosts/ # Per-host connection profiles
Quick Reference
| Topic | File |
|---|---|
| Setup process | setup.md |
| Memory template | memory-template.md |
| Protocol details | protocols.md |
| Troubleshooting | troubleshooting.md |
Core Rules
1. Protocol Selection
| Target OS | Best Protocol | Why |
|---|---|---|
| Windows | RDP | Native, best performance |
| Linux (desktop) | VNC or X11 | VNC for persistent, X11 for apps |
| macOS | VNC (built-in) | Screen Sharing uses VNC |
| Headless Linux | SSH + X11 forwarding | No desktop needed |
2. Security First
- Always prefer SSH tunneling over direct exposure
- Never expose RDP (3389) or VNC (5900) to internet directly
- Use SSH keys, not passwords
- If direct needed, use VPN or firewall rules
3. Connection Commands
RDP to Windows:
# xfreerdp (recommended)
xfreerdp /v:HOST /u:USER /p:PASS /size:1920x1080 /dynamic-resolution
# With SSH tunnel first
ssh -L 3389:localhost:3389 user@jumphost
xfreerdp /v:localhost /u:USER
VNC:
# Direct (NOT recommended for internet)
vncviewer HOST:5901
# Via SSH tunnel (recommended)
ssh -L 5901:localhost:5901 user@HOST
vncviewer localhost:5901
SSH X11 forwarding:
# Single app
ssh -X user@HOST firefox
# Trusted (faster, less secure)
ssh -Y user@HOST
4. Port Defaults
| Protocol | Default Port | Display :0 | Display :1 |
|---|---|---|---|
| RDP | 3389 | 3389 | - |
| VNC | 5900 | 5900 | 5901 |
| SSH | 22 | - | - |
| NoMachine | 4000 | 4000 | - |
5. Tunnel Everything
For any remote desktop over internet:
# Local port forward
ssh -L LOCAL_PORT:TARGET:REMOTE_PORT user@JUMPHOST
# Example: RDP via jumphost
ssh -L 13389:windows-pc:3389 user@jumphost
xfreerdp /v:localhost:13389 /u:USER
6. Clipboard and Files
| Tool | Clipboard | File Transfer |
|---|---|---|
| xfreerdp | /clipboard flag | /drive:share,/path |
| vncviewer | Usually works | Separate SCP/SFTP |
| SSH X11 | Needs xclip setup | SCP/SFTP |
7. Save Working Configs (with consent)
When a connection works, ask "Want me to save this config for next time?" If yes, save to ~/remote-desktop/hosts/:
# hostname.md
host: 192.168.1.50
protocol: rdp
user: admin
tunnel: ssh user@jumphost -L 3389:192.168.1.50:3389
resolution: 1920x1080
notes: Windows 11 dev machine
Never save passwords — only hostnames, users, and connection flags.
Common Traps
- Black screen after VNC connect → Display manager not running or wrong display number. Try
:1instead of:0, or start a VNC server:vncserver :1 - RDP disconnects immediately → Check Network Level Authentication (NLA) settings, or add
/sec:tlsto xfreerdp - X11 forwarding not working → Ensure
X11Forwarding yesin server's/etc/ssh/sshd_configandForwardX11 yesin client config - Slow VNC performance → Use tighter encodings:
vncviewer -encoding tight HOST:1 - "Connection refused" → Service not running, firewall blocking, or wrong port. Check with
ss -tlnp | grep PORT - Clipboard not syncing → xfreerdp needs
/clipboard, VNC needs vncconfig running
Security & Privacy
Data that stays local:
- Host configurations in
~/remote-desktop/(with user consent) - Connection preferences
This skill does NOT:
- Store passwords in plain text — use SSH keys or system keyring
- Auto-save configs without asking first
- Connect to hosts without explicit user command
- Make any network requests itself (you run the commands)
- Access any memory outside
~/remote-desktop/
Before saving a host profile: Always ask "Want me to save this config for next time?"
Scope
This skill ONLY:
- Provides commands for remote desktop connections
- Helps troubleshoot display and connection issues
- Saves host profiles locally
This skill NEVER:
- Stores credentials in plain text
- Auto-connects to anything
- Modifies SSH or system configs without explicit instruction
Related Skills
Install with clawhub install if user confirms:
linux— Linux system administrationserver— Server setup and managementnetwork— Network configuration and debuggingsysadmin— System administration tasks
Feedback
- If useful:
clawhub star remote-desktop - Stay updated:
clawhub sync
Related skills
Save, search, organize, and manage Get Notes content and knowledge bases through explicit commands.
Build and operate a testable learning plan with practice, spaced review, transfer checks, and durable local records.
Learn a topic through level checks, adaptive explanations, retrieval practice, and review across sessions.
Discover and trade Polymarket crypto fast markets using CEX momentum or a custom signal.
Extract email dates, links, and deadlines for review, then create or update tracked Google Calendar events.
More from Iván
Browse all skillsWrite, debug, and tune Java and JVM systems with JDK-aware code and diagnostic steps.
Design and critique visual artifacts using measurable rules for hierarchy, spacing, type, color, and layout.
Diagnose CSS mechanics and produce targeted fixes or complete stylesheets for the chosen stack.
Architect, troubleshoot, secure, and cost-control AWS infrastructure with explicit cost and blast-radius guidance.
Diagnose, validate, transform, and evolve JSON payloads across parsers, schemas, storage, and large files.
Build and operate a testable learning plan with practice, spaced review, transfer checks, and durable local records.