Welcome to ControlR
ControlR is an open-source remote control and remote access server. A web dashboard and a set of self-hosted agents let you connect to Windows, macOS, and Linux machines, then stream screens, run a PowerShell terminal, transfer files, and chat with the desktop user.
Why ControlR?
- Cross-platform: Web dashboard works in any modern browser; agents run on Windows, macOS, and Linux.
- Real-time control: WebSocket screen streaming and input forwarding, backed by a SignalR control plane.
- Multi-tenant: Server, tenant, and per-user isolation. Access is decided by permission assignments rather than fixed roles, and each assignment is scoped to a level such as a tenant, a customer, a device group, or a single device.
- Self-hosted: Run the whole stack in Docker or as a native process on Linux. Your data stays on your hardware.
- MIT licensed: Source available, no per-agent or per-seat fees.
Quick Links
- Getting Started: Components, prerequisites, and architecture overview.
- Installation: Docker Compose quick start and agent install scripts.
- User Guide: Dashboard, device access, deploy, and admin pages.
- Architecture: How the server, hubs, and agent fit together.
- API Reference: REST endpoints, SignalR hubs, and NuGet clients.
- GitHub: Source code, issues, and discussions.
- Discord: Community chat.