# Skill: helios-remote > **Note:** This repo also contains Rust code (client, server) and assets. > Those files are not relevant for using the skill — don't read or modify them. Control PCs connected to the Helios Remote Relay Server. ## When to use When Moritz asks to do something on a connected PC: - "Do X on my PC..." - "Check what's running on the computer..." - "Take a screenshot of..." - General: remote access to an online PC ## Setup - **Script:** `skills/helios-remote/helios` - **Config:** `skills/helios-remote/config.env` (URL + API key, don't modify) - `SKILL_DIR=/home/moritz/.openclaw/workspace/skills/helios-remote` ## Important Rules - **Before destructive actions** (wallpaper, registry, system settings, deleting files) always read the current state first! - Wallpaper: `(Get-ItemProperty 'HKCU:\Control Panel\Desktop').WallPaper` - **Device labels are lowercase**, no whitespace, only `a-z 0-9 - _` (e.g. `moritz_pc`) ## Commands ```bash SKILL_DIR=/home/moritz/.openclaw/workspace/skills/helios-remote # List connected devices $SKILL_DIR/helios devices # Screenshot → /tmp/helios-remote-screenshot.png # ALWAYS prefer window screenshots (saves bandwidth)! $SKILL_DIR/helios screenshot moritz-pc chrome # window by label $SKILL_DIR/helios screenshot moritz-pc screen # full screen only when no window known # List visible windows (use labels for screenshot/focus/maximize) $SKILL_DIR/helios windows moritz-pc # Window labels come from the process name (e.g. chrome, discord, pycharm64) # Duplicates get a number suffix: chrome, chrome2, chrome3 # Use `windows` to discover labels before targeting a specific window # Focus / maximize a window $SKILL_DIR/helios focus moritz-pc discord $SKILL_DIR/helios maximize moritz-pc chrome # Minimize all windows $SKILL_DIR/helios minimize-all moritz-pc # Shell command (PowerShell, no wrapper needed) $SKILL_DIR/helios exec moritz-pc "Get-Process" $SKILL_DIR/helios exec moritz-pc "hostname" # With longer timeout for downloads etc. (default: 30s) $SKILL_DIR/helios exec moritz-pc --timeout 600 "Invoke-WebRequest -Uri https://... -OutFile C:\file.zip" # Launch program (fire-and-forget) $SKILL_DIR/helios run moritz-pc notepad.exe # Ask user to do something (shows MessageBox, blocks until OK) $SKILL_DIR/helios prompt moritz-pc "Please click Save, then OK" $SKILL_DIR/helios prompt moritz-pc "UAC dialog coming - please confirm" --title "Action required" # Clipboard $SKILL_DIR/helios clipboard-get moritz-pc $SKILL_DIR/helios clipboard-set moritz-pc "Text for clipboard" # File transfer $SKILL_DIR/helios upload moritz-pc /tmp/local.txt "C:\Users\Moritz\Desktop\remote.txt" $SKILL_DIR/helios download moritz-pc "C:\Users\Moritz\file.txt" /tmp/downloaded.txt # Version: compare relay + helios + client commits (are they in sync?) $SKILL_DIR/helios version moritz-pc # Client log (last 100 lines, --lines for more) $SKILL_DIR/helios logs moritz-pc $SKILL_DIR/helios logs moritz-pc --lines 200 ``` ## Typical Workflow: UI Task 1. `windows ` → find the window label 2. `screenshot ` → look at it 3. `focus ` → bring it to front if needed 4. `exec` → perform the action 5. `screenshot ` → verify result ## ⚠️ Prompt Rule **Never interact with UI blindly.** When you need the user to click something: ```bash $SKILL_DIR/helios prompt moritz-pc "Please click [Save], then press OK" ``` This blocks until the user confirms. Use it whenever manual interaction is needed.