📦kunkundi / crossdesk
← 返回首页
A lightweight, cross-platform remote desktop software with support for Web Client access | 一款支持 Web 客户端访问的轻量级跨平台远程桌面软件。
⚖️ NOASSERTION#rtc#rtp#webrtc#xmake#video-streaming🌐 www.crossdesk.cn📅 创建于 2023-11-20🔄 更新于 2026-11-14

📄 仓库 README

在 GitHub 查看 ↗
来自 GitHub 仓库自述文件 · 版权归原作者所有
CrossDesk 标志:图标在左,双色文字在右

轻量、跨平台的远程桌面,支持电脑、浏览器、移动端和终端连接,用桌面墙集中查看与操控多台设备。

官方网站 · 下载客户端 · 打开 Web 客户端 · English

[![Platforms](https://img.shields.io/badge/platform-Windows%20%7C%20macOS%20%7C%20Linux%20%7C%20iOS%20%7C%20Android%20%7C%20HarmonyOS-blue?style=flat)](#download) [![Clients](https://img.shields.io/badge/client-Desktop%20%7C%20Mobile%20%7C%20Web%20%7C%20CLI-2ea44f?style=flat)](#download) [![Release](https://img.shields.io/github/v/release/kunkundi/crossdesk?style=flat)](https://github.com/kunkundi/crossdesk/releases) [![npm](https://img.shields.io/npm/v/%40chunkdash%2Fcrossdesk-cli?style=flat)](https://www.npmjs.com/package/@chunkdash/crossdesk-cli) [![Build](https://img.shields.io/github/actions/workflow/status/kunkundi/crossdesk/build.yml?style=flat&label=build)](https://github.com/kunkundi/crossdesk/actions/workflows/build.yml) [![License: GPL v3](https://img.shields.io/badge/license-GPL--3.0-blue?style=flat)](https://github.com/kunkundi/crossdesk/blob/HEAD/LICENSE) [![Stars](https://img.shields.io/github/stars/kunkundi/crossdesk?style=flat&label=stars)](https://github.com/kunkundi/crossdesk/stargazers) [![爱发电](https://img.shields.io/badge/%E7%88%B1%E5%8F%91%E7%94%B5-946CE6?logo=afdian&logoColor=white)](https://afdian.com/a/kunkundi) [![Ko-fi](https://img.shields.io/badge/Ko--fi-FF6433?logo=kofi&logoColor=white)](https://ko-fi.com/kunkundi) [![GitHub Sponsors](https://img.shields.io/badge/GitHub_Sponsors-C93C45?logo=githubsponsors&logoColor=white)](https://github.com/sponsors/kunkundi)

CrossDesk 让你从电脑、浏览器、手机或终端(桌面 CLI)连接远端电脑,也能通过桌面墙(DeskHub)集中查看与操控多台设备。项目基于 MiniRTC,支持自托管。

主要功能 · 下载与平台支持 · 快速连接 · 终端 CLI · Agent / MCP · IP 直连 · 可信设备 · 界面预览 · 使用指南 · 自托管 · 构建与反馈 · 赞助

主要功能

  • 跨平台远控: Windows、macOS、Linux 桌面互控,浏览器及原生 iOS / Android 客户端访问电脑;鸿蒙 PC 与移动端处于开发阶段。
  • 局域网 IP 直连: 桌面客户端通过 IP、端口和六位密码连接,无需云端信令服务;支持独立端口、记住密码及按模式显示近期设备。
  • 终端主控: 在终端中通过设备 ID 观看和操控远程桌面,支持 ANSI / Kitty / Sixel 画面、局部缩放与平移、持续本地命令模式及 Pi 扩展,可单独构建。
  • 桌面墙: 多设备实时预览、分组、放大操控、群控和批量文件分发。
  • 画面与声音: H.264 / AV1、硬件编解码、远端音频,会话内调整画质、帧率和远端显示器分辨率;记住已确认的分辨率选择,最后一个控制端断开后恢复原显示模式。可用能力随平台与设备而异。
  • 日常协作: 多显示器切换、键鼠与组合键、文本剪贴板;双栏文件浏览支持目录导航、文件与文件夹双向传输、拖放和任务管理。
  • Agent / MCP: 通过本机 MCP 服务授权 Agent 观察和操作远端电脑,提供实时监看、人工接管、多会话、剪贴板和文件工具;目前从源码构建使用。
  • 可信设备: 桌面端可选开启可信设备限制,在连接密码之外校验设备身份;支持复制、粘贴配对信息,提前添加允许访问本机的设备。
  • 部署与运维: P2P 直连、TURN 中继、SRTP 媒体加密、自托管,以及 Windows 登录前远控和 Linux 无头运行。

下载与平台支持

从 官方网站 或 GitHub Releases 下载与你的系统和 CPU 架构匹配的安装包;也可直接打开 Web 客户端。

平台 支持范围与安装要求
Windows 控制 / 被控;Windows 10+,x64;.exe 安装包,也支持便携构建
macOS 控制 / 被控;macOS 14.0+;按 Intel / Apple Silicon 选择 x64 / arm64 .pkg
Linux 控制 / 被控;Ubuntu 20.04+、glibc 2.31 基线;amd64 / arm64 .deb
iOS / iPadOS 仅控制;从 App Store 安装,商店版系统要求以页面为准;当前源码目标为 iOS 16.0+,也可自行构建签名
Android 仅控制;Android 8.0+,arm64;下载已签名 APK 安装,或自行构建
鸿蒙 PC(开发版) 控制 / 被控;API 26,arm64;使用 DevEco 构建并签名 HAP,仍在进行真机验收
鸿蒙手机 / 平板(开发版) 仅控制;API 20+,arm64;使用 DevEco 构建并签名 HAP,仍在进行真机验收
Web 仅控制;支持 WebRTC 的浏览器;无需在控制端安装客户端
终端 CLI(开发版) 仅控制;分发目标为 macOS / Linux(x64、arm64)和 Windows(x64);通过 npm 安装 或从源码构建,平台验收范围见 CLI 说明
MCP(开发版) 仅控制;在 Codex 或 DSH 中操作远端并监看画面;DSH 安装一个插件包,Codex 需 Node.js 22+,见 安装与使用

系统要求按当前源码与构建配置整理,具体安装包以对应 Release 说明为准。各客户端的功能范围见 终端 CLI 与 移动端与鸿蒙。

  • Linux: 已有桌面选普通版 crossdesk-linux-…deb;需要独立 Xfce 桌面的服务器选 crossdesk-virtual-desktop-xfce-…deb。两者选择其一,安装与启动方法见 使用指南 和 无头运行。
  • macOS: 首次运行时按提示授予屏幕录制及辅助功能权限;前者用于桌面采集,后者用于远程键鼠输入。权限说明
  • iOS: 优先从 App Store 安装;GitHub 的未签名产物仍需自行签名,步骤见 iOS 构建说明。鸿蒙需使用 DevEco 构建并签名,见 鸿蒙说明。

快速连接

通过设备 ID 连接

  1. 准备被控电脑。 安装并运行 CrossDesk,切换至 ID 连接模式,等待显示“已连接服务器”,查看“本桌面”中的本机 ID 和密码。
  2. 发起连接。 在另一台电脑的 CrossDesk 中输入被控电脑的 9 位 ID,点击“连接”;也可使用原生移动端或 Web 客户端。
  3. 验证密码。 输入被控电脑当前的连接密码,等待远程画面出现。桌面端可勾选“记住密码”,后续从“近期连接”重连。

使用自建服务器时,两端需要接入同一服务。新版桌面端使用设备密钥登录服务器,请先升级服务端:新 ID 注册时绑定公钥,旧 ID 首次升级时验证原密码后绑定;绑定后,针对该 ID 的错误密码尝试不会阻塞正常签名登录。远程控制仍需输入连接密码;新版控制端也验证设备签名,密码失败按控制端及“控制端 → 目标”计数,不再累计被控端的总失败次数,避免他人的错误尝试锁住目标。身份备份与兼容要求见 设备登录说明。更多连接、密码及浏览器操作见 使用指南;连接失败、黑屏或无法操作键鼠时先查阅 常见问题。

通过局域网 IP 直连

  1. 切换模式。 两台电脑均运行支持 IP 直连的桌面客户端,点击左上角模式按钮切换到 IP 直连模式。若按钮未显示,在 设置 → 常规 → 网络连接 中勾选 启用 IP 直连 并保存。
  2. 填写地址。 在控制端输入被控电脑显示的 IP:端口,例如 192.168.1.20:52888 或 [2001:db8::20]:52888,点击“连接”。只输入 IP 时使用默认端口 52888;请以对方界面显示的实际端口为准。
  3. 输入密码。 输入被控电脑在 IP 直连模式下显示的 6 位英文字母或数字密码,可勾选“记住密码”。切换模式时,“近期连接”同步切换为对应模式的设备记录。

两台电脑需要在局域网内可互相访问;网络可以有外网,也可以没有外网,直连会话不依赖云端信令服务。主窗口可直接切换本机 IP、修改端口和密码,默认开启所有 IP 接口监听,支持 IPv4 和 IPv6,支持通过 VPN 等接口连接,可在设置的“网络连接”中调整;关闭设置中的“启用 IP 直连”会停止监听、断开 IP 直连会话并隐藏模式按钮。详见 IP 直连使用指南。

仅允许可信设备连接(可选)

桌面端的可信设备限制默认关闭,适用于 ID 连接和 IP 直连。开启后,控制端仍需通过原有密码验证,并持有可信名单中设备的配对私钥;仅知道 ID 和密码不能通过这项限制。

  1. 在控制端复制配对信息。 打开 设置 → 常规 → 隐私保护 → 管理可信设备,在 本机配对信息 中点击 复制配对信息。
  2. 在被控端添加控制端。 打开同一管理界面,将收到的信息粘贴到 添加可信设备 输入框,点击 添加 即可加入,无需再次确认,也无需先建立远程连接。
  3. 在被控端开启限制。 返回设置,勾选 仅允许可信设备控制 并保存。之后照常通过 ID 或 IP 发起连接、验证密码。

配对信息只包含公钥、设备名称和 ID,不含私钥或密码,应通过可信渠道传递。添加后可点击 查看指纹 与控制端核对;也允许添加本机,同一公钥不会重复加入。信任是单向的,如需互相控制,应在双方分别添加对方。

添加和移除会立即保存;开启限制时,移除信任 会断开对应设备的会话,名单为空则拒绝所有控制端。也可以从管理界面的已连接设备中添加完成身份验证的控制端。

兼容范围: 两端均需使用支持可信设备认证的客户端。不支持该协议的旧版客户端无法连接开启限制的被控端;当前 CLI、iOS、Android 和鸿蒙移动端尚未实现该认证。关闭限制时沿用原有连接方式。

设备登录与配对共用缓存目录 identity.json 中的私钥,可信名单保存在配置目录的 trusted-devices/devices.json。迁移本机身份时应同时备份 ID/密码缓存与 identity.json;已绑定的 ID 无法仅凭密码恢复登录。清空整个缓存目录后需重新登记 ID,并让其他设备重新信任本机。备份、迁移及认证机制见 可信设备技术说明。

界面预览

桌面客户端

本机凭据、远程连接和近期设备集中在主窗口,左上角提供连接模式切换和桌面墙入口。

CrossDesk ID 连接模式:模式切换、本机 ID、远程连接入口和近期设备;数据为演示

IP 直连模式

切换本机 IP、修改端口与密码,通过对方地址连接;下方展示独立的局域网近期设备。

CrossDesk IP 直连模式:本机 IP 和端口编辑入口、六位密码、远端地址输入和局域网近期设备;数据为演示

桌面墙(DeskHub)

按分组查看多台设备,点击画面放大,再选择接管操控;支持批量连接、静音与文件分发。

DeskHub 桌面墙:六台演示设备的远程画面与管理工具栏

群控会向所有已连接设备发送输入;关闭桌面墙会断开全部远程连接。操作范围与详细用法见 桌面墙使用指南。截图使用演示数据,更多界面及来源见 使用指南 与 截图说明。

双栏文件传输

在会话工具栏打开文件传输,同时浏览本机与远端目录,选择文件或文件夹后发送,也可在两栏之间拖放;任务列表显示进度并支持取消未完成任务。远端目录浏览需要兼容的被控端。

双栏文件传输:本机与远端路径、文件列表、发送按钮和任务列表;数据为演示

会话操作与设置

远程会话支持显示器切换、画质与帧率调整、声音、文本剪贴板同步和双向文件传输。工具栏还可查看网络状态、控制隐私屏;桌面设置中可配置 IP 直连开关、可信设备限制、编码、中继、自托管、最小化时暂停视频及桌面墙画面预算。

被控端为 Windows、macOS 或 Linux X11 时,可在 画面设置 → 分辨率 中选择当前显示器支持的模式,无需重连。桌面和原生移动端会记住远端确认成功的选择,重连时在仍受支持的情况下重新应用;最后一个控制端断开后,被控端恢复本轮连接首次调整前的显示模式。Linux 需要 X11 采集和 RandR,Wayland / XWayland 暂不支持此项调整。

会话画面设置:质量、帧率、远端显示器分辨率和画面偏好;背景为公开页面演示图

终端客户端 CLI

crossdesk-cli 在终端中通过 9 位设备 ID 连接被控电脑,默认只读、静音。普通终端使用 ANSI 字符画面,支持 Kitty 或 Sixel 图形协议的终端可显示像素画面;可切换显示器、调整画质、放大细节和平移,也可明确开启键鼠控制。CLI 可以独立于桌面 GUI 构建,被控电脑仍需运行 CrossDesk 并提供可捕获的图形会话,信令服务需支持 cli 临时身份注册。

画面预览

ANSI 字符画面 Kitty 协议像素画面
CrossDesk CLI 的 ANSI 四象限全景:顶部显示只读模式和连接状态,底部显示操作快捷键 CrossDesk CLI 的 Kitty 协议全景:同一远程桌面以像素画面显示,保留状态栏和操作快捷键
用彩色字符显示桌面轮廓,适合普通终端;查看局部可用 +/- 或滚轮以鼠标位置缩放。 直接显示像素画面,适合支持 Kitty 图形协议的终端,如 Ghostty。

两图采集于 2026-10-31,来自同一授权设备的实际只读连接,以 128 × 40 字符视口还原 CLI 的 ANSI / Kitty 协议输出。图中 FPS 是采集时的实际输出计数,静止画面下 ANSI 无变化可显示 FPS 0。图示为输出渲染,终端实窗效果受字体、窗口大小及协议支持影响;采集方法见 图示来源。

通过 npm 安装并连接

准备 Node.js 22 或以上及 npm,从 @chunkdash/crossdesk-cli 安装。npm 会按操作系统与 CPU 架构选择原生程序,无需安装 Xmake 或 C++ 编译工具链。

```sh npm install -g @chunkdash/crossdesk-cli@latest cross

📈 近 7 天 Star 趋势

每日新增 Star(柱)与累计 Star(线)· 数据来自 GitHub

🏆 排名变化趋势

在各榜单中的排名历史(数字越小越靠前)

📋 历史上榜记录

每次快照的详细数据
日期 榜单 排名 周期新增 总 STAR