项目介绍
QuickDesk 是首款 AI 原生远程桌面软件,开源免费,内置 MCP (Model Context Protocol) Server,让任何 AI Agent 都能看到和操控远程电脑。它扩展了 AI 计算机使用的范围,从只能操作本机扩展到可以操作世界上任何一台远程设备。
应用场景
-
自动化任务执行: 通过接入 Claude、GPT、Cursor 或任何 MCP 兼容的 AI,可以在远程桌面上自动化执行任务,如截图、点击、输入、拖拽等,实现7×24小时不间断工作。 -
批量自动化与跨设备工作流: AI 可以同时连接控制多台远程设备,实现批量自动化操作、跨设备工作流以及设备集群管理。 -
远程技术支持: 技术人员可以通过 QuickDesk 远程连接到用户设备,实时诊断和解决问题,提高服务效率。 -
私有化部署与数据安全: 支持自建信令服务器和 TURN 中继服务器,确保数据完全掌控在自己手中,适用于对数据安全有高要求的企业环境。
功能模块
AI 集成(MCP Server)
-
内置 MCP Server: AI Agent 通过标准 MCP 协议连接,无需插件、无需 Hack、零配置。 -
双传输模式: 支持 stdio 模式(AI 客户端启动进程)和 HTTP/SSE 模式(QuickDesk 托管 MCP 服务器,支持多客户端同时连接)。 -
完整的 Computer Use 工具集: 提供20+ MCP 工具,包括截图、点击、输入、拖拽、滚动、快捷键、剪贴板等。 -
实时可见与干预: AI 的所有操作实时显示在 QuickDesk 界面中,用户可以随时干预。 -
多设备 AI 编排: AI 可同时连接控制多台远程设备,支持批量自动化、跨设备工作流、设备集群管理。 -
内置操作指南: 提供9个 MCP Prompt 模板,覆盖远程操作、服务器健康检查、批量自动化、故障诊断等多种场景。
远程控制
-
高清低延迟远程桌面显示: 提供流畅的远程桌面体验。 -
键盘和鼠标完整映射控制: 支持完整的键盘和鼠标操作映射。 -
远程光标实时同步: 实时同步远程光标位置。 -
剪贴板双向同步: 支持剪贴板内容的双向同步。 -
自适应帧率与码率: 根据网络状况自动调整帧率和码率。 -
帧率增强模式: 提供办公和游戏两种帧率增强模式。
连接管理
-
9位设备ID + 临时访问码机制: 确保连接的安全性和唯一性。 -
访问码自动刷新: 可配置访问码自动刷新时间,增强安全性。 -
多标签页同时连接多台远程设备: 支持同时连接和管理多台远程设备。 -
连接历史记录与快速重连: 提供连接历史记录,支持快速重连。 -
实时连接状态监控: 实时监控连接状态,确保连接稳定。
性能监控
-
详细的延迟分解面板: 显示捕获、编码、网络、解码、渲染等各个环节的延迟情况。 -
实时帧率、码率、带宽统计: 提供实时的性能统计信息。 -
输入往返时延(Input RTT)监测: 监测输入指令的往返时延。 -
编码分辨率、编码质量信息: 显示当前编码的分辨率和质量信息。
个性化
-
Fluent Design 风格界面: 提供现代化的用户界面。 -
明暗主题切换: 支持明暗两种主题切换。 -
中英文国际化支持: 提供中英文两种语言支持。 -
视频编码偏好设置: 支持 H.264、VP8、VP9、AV1 等多种视频编码格式。
私有化部署
-
自定义信令服务器地址: 支持自定义信令服务器地址。 -
自定义 STUN/TURN 服务器: 支持自定义 STUN/TURN 服务器地址。 -
完整的服务端部署方案: 提供包括 Go 信令服务器、PostgreSQL、Redis、coturn 等在内的完整服务端部署方案。
功能特点
-
开源免费: 采用 MIT 许可证,商用无忧,无功能限制,无连接数限制。 -
高性能基座: 基于 Chromium Remoting 技术架构,经过十多年大规模商用验证,性能、稳定性和安全性都达到工业级水准。 -
纯 C++ 极致性能: 从远程协议核心到 GUI 应用全栈 C++ 实现,无 GC 停顿、无运行时开销,内存和 CPU 占用极低。 -
现代编解码支持: 支持 H.264、VP8、VP9、AV1 等多种编码格式,可根据网络和硬件灵活切换。 -
WebRTC P2P 直连: 优先建立端到端直连,延迟最低;穿透失败自动回退 TURN 中继。 -
跨平台支持: 支持 Windows 和 macOS(Linux 计划中)。
项目技术栈
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
项目结构
QuickDesk/
├── QuickDesk/ # Qt GUI 客户端
│ ├── main.cpp # 应用入口
│ ├── src/
│ │ ├── api/ # WebSocket API 服务端 + 请求处理
│ │ ├── controller/ # 主控制器
│ │ ├── manager/ # 业务管理(Host/Client/Process/TURN/...)
│ │ ├── component/ # 视频渲染、按键映射、光标同步
│ │ ├── core/ # 配置中心、用户数据
│ │ ├── viewmodel/ # MVVM ViewModel
│ │ └── language/ # 国际化
│ ├── qml/
│ │ ├── views/ # 主窗口、远程桌面窗口
│ │ ├── pages/ # 远程控制页、设置页、关于页
│ │ ├── component/ # Fluent Design 通用组件库
│ │ └── quickdeskcomponent/ # QuickDesk 专用组件
│ ├── base/ # 基础工具库
│ └── infra/ # 基础设施(数据库、日志、HTTP)
├── quickdesk-mcp/ # Rust MCP 桥接(stdio ↔ WebSocket)
│ └── src/
│ ├── main.rs # 入口、命令行参数、MCP Server 启动
│ ├── server.rs # MCP 工具、提示词模板、资源
│ └── ws_client.rs # 连接 Qt API 的 WebSocket 客户端
├── SignalingServer/ # Go 信令服务器
│ ├── cmd/signaling/ # 程序入口
│ └── internal/ # 业务逻辑
├── scripts/ # 编译、打包、发布脚本
├── docs/ # 文档
│ ├── mcp-integration.md # MCP 接入指南(英文)
│ └── MCP接入指南.md # MCP 接入指南(中文)
├── .github/workflows/ # CI/CD 配置
└── version # 版本号
项目架构

功能演示



开源地址
https://gitee.com/Barryda/QuickDesk

