Hopp 介绍与选型指南

Hopp(gethopp.app)开源远程结对编程工具认知篇:定位架构、功能边界、AGPL-3.0 与 721 星实查数据,及与 Tuple/Pop/CoScreen/Drovio/Screego 的量化选型对比。

HoppHopp实时协作屏幕共享WebRTC2026/10/29

Hopp 介绍与选型指南

目标:讲清 Hopp——一款开源远程结对编程与屏幕共享工具——的定位、架构、功能边界,并与同类结对/共享工具做量化对比,帮助团队判断"是否值得自托管 Hopp"。本文为认知溯源篇,全部事实标注来源与查询日期(2026-10-29),部署与 API 实测见本专栏后续三篇。

一、环境信息(溯源来源)

  • 官方站点:https://www.gethopp.app (查询日期 2026-10-29)
  • 官方文档:https://docs.gethopp.app (查询日期 2026-10-29)
  • 官方仓库:https://github.com/gethopp/hopp (查询日期 2026-10-29,commit 基线 2390461f,2026-10-21)
  • 版本与社区数据:shields.io 徽章接口 + Docker Hub tag 列表(查询日期 2026-10-29)
  • 同类产品信息:gethopp.app 官方对比页《Hopp vs Tuple vs CoScreen vs Drovio vs Pop》及各产品官网(查询日期 2026-10-29)

二、软件概述

Hopp 是一款为开发者设计的开源远程结对编程应用与屏幕共享工具(官方 README 自述,查询日期 2026-10-29),主打三条能力线:低延迟屏幕共享(官方宣称针对 WebRTC 做了专项延迟优化,见其博客《Latency exploration》)、多人远程控制(多光标同时操作同一台机器)、一键结对(在团队联系人列表里点同事即发起共享,无需发链接)。官方将其定位为 Tuple 的开源替代,以及 Pop / Drovio / CoScreen 的开源自托管替代。

关键身份信息(全部实查,查询日期 2026-10-29):

维度实查结果来源
许可证AGPL-3.0GitHub 仓库 LICENSE.md,shields.io 徽章 license: AGPL-3.0
GitHub 星数721shields.io github/stars 徽章
最新发行版v1.0.33(2026-10-17,桌面端 Release 与 backend 镜像 tag 同步)shields.io release 徽章 + Docker Hub tag 列表
版本节奏2026-05 至 2026-10 发布 v1.0.12 → v1.0.33 共 20+ 个 tag,平均每月 4 个左右,2026-09 起放缓至约每月 1 个Docker Hub iparaskev/hopp-backend tag 时间戳
商业模式云托管版 $15/用户/月(14 天试用);自托管 100% 免费;官方声明"付费云养开源"gethopp.app 定价页与 README
平台支持macOS 稳定版、Windows alpha、Linux 计划中(waitlist)README"Supported Platforms"与"Roadmap"

💡 技术拓展:AGPL-3.0 与常见后端许可证的差异值得关注——它比 GPL 更进一步,要求通过网络提供服务时也必须开放修改后的源码。这意味着:企业内部自托管使用没问题;但若基于 Hopp 二次修改后对外提供 SaaS 服务,必须开源你的修改版本。对比同类:Tuple/Drovio/CoScreen 为闭源商业软件,Screego 采用 GPL-3.0(无网络服务条款)。选型时若涉及二次开发对外服务,AGPL 是比"能否免费用"更需要先想清楚的一条。

三、核心架构

官方仓库 README 的 Repo Map(查询日期 2026-10-29)给出六个组成模块:

模块技术栈职责
tauri/Tauri 2 + React/TypeScript桌面客户端外壳(macOS/Windows)
core/Rust(hopp_core)屏幕捕获 + WebRTC 引擎 + 远程输入注入
backend/Go 1.25 + Echo + PostgreSQL + RedisAPI 服务器(账号/团队/房间/凭证),同时托管 Web 前端
web-app/React + ViteWeb 仪表盘(加入房间、团队管理)
livekit-local-server/LiveKit开发用本地 WebRTC SFU 配置
selfhost/Docker Compose自托管编排(backend + PostgreSQL + Redis + LiveKit + Caddy)

架构上有两个值得注意的设计决策:

  1. 媒体面与业务面分离:屏幕画面/键鼠输入走 LiveKit SFU(WebRTC,UDP 50000-60000 直连),业务数据(账号、房间、在线状态)走 Go 后端 REST API。自托管部署因此要求服务器开放 UDP 端口段,详见《Hopp Docker Compose 部署指南》第三节。
  2. 桌面端三进程协作:官方 AGENTS.md 描述的 IPC 架构为"Tauri UI(React webview)↔ Tauri Backend(Rust)↔ Core Process(Rust sidecar)",Tauri 与 core 之间用 Unix socket(macOS/Linux)或 TCP(Windows)传长度前缀 JSON 消息——屏幕采集与输入注入这类高性能任务独立于 webview 进程运行。

API 契约有正式规格(backend/api-files/openapi.yaml,OpenAPI 3),接口的实测用法见《Hopp v1.0.33 API 使用详解》。

四、功能特性

据官方 README 与文档站(查询日期 2026-10-29):

  • 屏幕共享:可共享整个屏幕或单个窗口;官方宣传 4K 分辨率、sub-100ms 延迟体验;
  • 远程控制:双方都能键鼠操作,支持多光标(multi-cursor remote control);
  • 标注(Annotations):标注可保留至手动清除或自动清除;
  • 房间(Rooms):最多 10 人同时结对(mob programming 场景);访客可从浏览器直接加入房间;
  • 一键结对:从团队联系人列表点击即发起,无需复制粘贴链接;
  • 集成:Slack 支持(登录 + 斜杠命令 + 通知);Google/Slack/GitHub OAuth 登录可选;
  • 自托管:完整源码开放,官方提供 Docker Compose 栈与托管私有云(Hopp Private Cloud)两条路径;自托管构建默认关闭 PostHog 遥测;
  • Web 端免重建:自托管后端直接托管 Web 前端,运行时从浏览器地址推导 API 地址。

不在当前功能面的(据 README Roadmap,查询日期 2026-10-29):动态编码选择与自适应分辨率、快捷键绑定、Linux 桌面端均在计划中;会话录制/转码未出现在路线图。

五、快速开始(最小可用示例)

官方提供两条等价入口(README"Try Hopp"节,查询日期 2026-10-29):

入口 A:托管云——在 gethopp.app 注册(14 天免费试用),下载桌面端登录即用。

入口 B:自托管——官方 README 的 TL;DR:

git clone https://github.com/gethopp/hopp.git
cd hopp/selfhost
cp .env.example .env   # edit DOMAIN + secrets
docker compose up -d   # for localhost see full guide in selfhost/README.md

栈内含 PostgreSQL、Redis、LiveKit 与 Caddy 自动 TLS。上述命令的逐条展开、密钥生成、本地/内网形态与生产域名形态两种实测路径,见《Hopp Docker Compose 部署指南》;部署后的参数调优见《Hopp v1.0.33 配置参数详解》。

桌面客户端从 GitHub Releases 下载(macOS stable / Windows alpha),自托管场景在 Settings > Custom Backend URL 填入自建服务地址即可切换后端(官方自托管文档"Web app and desktop"节)。

六、适用场景与限制

适合:

  • 远程结对编程的团队对数据驻留有要求(AGPL 源码开放 + 全栈自托管,媒体流不过第三方);
  • 已有基础设施与运维能力的团队,想替代按人月付费的 Tuple/Drovio 订阅($15/用户/月的云版 vs 电费级边际成本的自托管);
  • Mob programming 团队(单房间 10 人内、浏览器访客加入);
  • 远程新人 onboarding(官方场景页主推:新人跟着 senior 同时操作同一环境)。

限制(查询日期 2026-10-29 的实查口径):

  • Linux 桌面端未发布:目前仅 macOS 稳定、Windows alpha;Linux 用户只能以浏览器访客身份加入,不能作为共享方(官方 waitlist 收集需求);
  • 自托管要求公网 UDP:媒体面需要开放 50000-60000/UDP,纯内网部署时跨公网结对的延迟与连通性会受影响;
  • 无录制/转码:路线图中未出现,不适合需要回放教学场景的团队;
  • 社区早期规模:721 星、单仓库单维护主体(对比 Tuple 的成熟商业支持),生产依赖前需评估响应能力。

七、同类选型对比

专用结对工具与屏幕共享工具横向对比(信息来源:gethopp.app 官方对比页与各产品官网/仓库,查询日期 2026-10-29;Hopp 列数据全部实查,竞品列定性描述、未逐项复核星数):

工具开源/许可证自托管桌面平台定价模式定位差异
Hopp开源 AGPL-3.0(721★,v1.0.33)✅ 官方 Compose 栈macOS 稳定 / Win alpha / Linux 计划自托管免费;云 $15/用户/月唯一开源 + 可自托管的专用结对工具,sub-100ms 主张
Tuple闭源商业❌macOS(Windows 部分支持)订阅制官方对比页称"最成熟的专用工具",UI 与用户基数大
Pop部分开源(Tandem 出品)❌macOS 为主免费+商业版老牌结对工具,功能面广但迭代放缓
CoScreen闭源(Datadog 旗下)❌macOS / Windows随 Datadog 体系协同共享思路类似,独立产品线弱化
Drovio闭源商业❌macOS / Win / Linux订阅制跨平台覆盖好,主打远程协作
Screego开源 GPL-3.0✅ 社区自托管浏览器(无采集端)免费纯屏幕共享,无远程控制/多光标,轻量得多
MiroTalk SFU开源 AGPL-3.0✅ 社区自托管浏览器免费视频会议向(音视频房间),非结对采集端形态

选型解读:

  1. 要"点同事头像直接结对"的完整体验 → Hopp 与闭源四家是同一物种,Screego/MiroTalk 是不同物种(无采集端与远程控制);
  2. 要数据不出内网 / 成本可控 → Hopp 是该组里唯一的开源自托管路径;
  3. 要成熟度与兜底支持 → Tuple/Drovio 的商业支持是 Hopp(早期社区)暂不具备的,关键业务建议先小规模试用 Hopp;
  4. 只要"看屏幕不要控制" → Screego 更轻,无需桌面客户端。

八、参考链接