Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Install

rdc is a single binary. Install it on the machine you want to control and on the machine your agent runs on. Both need to be on the same Tailscale tailnet.

Release binaries

Each tagged release on GitHub attaches:

FilePlatform
rdc-linux-x86_64.tar.gzLinux, x86_64, glibc
rdc-macos-arm64.tar.gzmacOS 15+, Apple silicon
rdc-windows-x86_64.zipWindows 10/11, x86_64
SHA256SUMSchecksums for the above

Unpack and put rdc (or rdc.exe) somewhere on your PATH. Verify with sha256sum -c SHA256SUMS.

Unsigned binaries

The release binaries are not code-signed or notarized.

  • macOS: Gatekeeper refuses to run the downloaded binary. You can clear the flag with xattr -d com.apple.quarantine rdc, but for the daemon you should not. macOS ties the Screen Recording and Accessibility permissions to the exact code hash of an unsigned binary, so every upgrade silently loses them. Build on the Mac and sign with your own certificate instead; macOS setup walks through it and a self-signed certificate is enough. The unsigned binary is fine for the client side (rdc -t …, rdc mcp).
  • Windows: SmartScreen warns on first run. “More info” → “Run anyway”, or build from source.
  • Linux: no signature checks apply.

With cargo

cargo install --git https://github.com/bscott/rdc --locked

Requires a recent stable Rust (the repo pins stable via rust-toolchain.toml; 1.90 or newer is known to work).

Build from source

git clone https://github.com/bscott/rdc
cd rdc
cargo build --release
./target/release/rdc --version

Build dependencies

Linux (Debian/Ubuntu names; the CI workflow uses exactly this list):

sudo apt-get install -y pkg-config libclang-dev libxcb1-dev libxcb-randr0-dev libxcb-shm0-dev \
  libxrandr-dev libdbus-1-dev libpipewire-0.3-dev libwayland-dev libegl-dev libxkbcommon-dev libgbm-dev

Arch: pacman -S clang pkgconf libxcb libxrandr dbus pipewire wayland libglvnd libxkbcommon mesa.

macOS: Xcode Command Line Tools (xcode-select --install) and Rust. Nothing else.

Windows: Rust with the MSVC toolchain (the default from rustup). Nothing else.

Where things live

LinuxmacOSWindows
config~/.config/rdc/config.toml~/Library/Application Support/rdc/config.toml%APPDATA%\rdc\config.toml
service~/.config/systemd/user/dev.rdc.daemon.service~/Library/LaunchAgents/dev.rdc.daemon.plistscheduled task dev.rdc.daemon.<user>
daemon logjournalctl --user -u dev.rdc.daemon~/Library/Application Support/rdc/serve.log%LOCALAPPDATA%\rdc\serve.log
audit log~/.local/state/rdc/audit.jsonl~/Library/Application Support/rdc/audit.jsonl%LOCALAPPDATA%\rdc\audit.jsonl

Next: Configuration, then the setup guide for your target platform.