# helios-client

Windows client for helios-remote. Connects to the relay server via WebSocket and executes commands.

## Features

- Full-screen and per-window screenshots
- Shell command execution (persistent PowerShell session)
- Window management (list, focus, maximize, minimize)
- File upload/download
- Clipboard get/set
- Program launch (fire-and-forget)
- User prompts (MessageBox)
- Single instance enforcement (PID lock file)

## Configuration

On first run, the client prompts for:
- **Relay URL** (default: `wss://remote.agent-helios.me/ws`)
- **API Key**
- **Device label** — must be lowercase, no whitespace, only `a-z 0-9 - _`

Config is saved to `%APPDATA%/helios-remote/config.toml`.

## Device Labels

The device label is the sole identifier for this machine. It must follow these rules:
- Lowercase only
- No whitespace
- Only characters: `a-z`, `0-9`, `-`, `_`

Examples: `moritz_pc`, `work-desktop`, `gaming-rig`

If an existing config has an invalid label, it will be automatically migrated on next startup.

## Build

```bash
cargo build -p helios-client --release
```
