Add subcommands so the desktop agent runs in the background on login — the real desktop product shape, no window. `tether-agent install` writes a launchd LaunchAgent (macOS) or systemd user unit (Linux) with the resolved config baked in (run mode + server/account/name/room), loads it, and it survives reboots; `uninstall`/`status` manage it. Foreground `run` unchanged (the no-subcommand default). Windows falls through with a hint. Verified on macOS: install loads the agent (launchctl lists it, process runs with the baked args), uninstall removes it cleanly. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
21 lines
947 B
Markdown
21 lines
947 B
Markdown
# tether-agent
|
|
|
|
Headless clipboard sync daemon on the shared `tethercore` engine (SSE + RTC +
|
|
LAN, prefer-direct E2E). One Rust binary for macOS / Linux / Windows.
|
|
|
|
```sh
|
|
tether-agent # run in the foreground (Ctrl-C to stop)
|
|
tether-agent install # run on login as a background service
|
|
tether-agent uninstall # remove the service
|
|
tether-agent status # service status
|
|
|
|
# config (applies to run + install; account derives the shared room):
|
|
tether-agent install --account you@example.com --name "Patrick's NAS"
|
|
```
|
|
|
|
- **macOS**: a launchd LaunchAgent at `~/Library/LaunchAgents/io.pecord.tether-agent.plist`
|
|
(logs → `~/Library/Logs/tether-agent.log`).
|
|
- **Linux**: a systemd user unit at `~/.config/systemd/user/tether-agent.service`
|
|
(`loginctl enable-linger` to start at boot without login).
|
|
- Defaults: `--server https://tether.pecord.io`, account-derived room, hostname as name.
|