将终端投射到设备
Termbridge 会运行本地服务器,通过 Cloudflare 建立隧道,并将你的 tmux 会话流式传输到任何浏览器。
npx termbridge最新版本 0.3.13 MIT Node 20+, tmux, cloudflared
# Create a tmux session and start the agent
tmux new-session -d -s claude "claude"
# Then attach Termbridge to it
termbridge --session claude实践应用
在电脑上启动,然后在另一台设备上打开终端。
从笔记本电脑到手机
npx termbridge 会启动本地服务器、tmux 会话和 Cloudflare 隧道,然后输出一个 QR 码,其中包含一次性登录链接。
扫描代码即可将令牌兑换为 Cookie 会话。添加 --proxy 5173,即可在终端旁边的预览视图中显示你的开发服务器。
npx termbridge# Start your Vite app first
cd my-app && npm run dev # runs on port 5173
# Then start Termbridge with proxy
termbridge --proxy 5173适配移动设备
扫描 QR 码,在手机浏览器中打开终端。
真正的终端
tmux + node-pty 将真实 PTY 接入 xterm.js,支持颜色和 TUI。
Cloudflare 隧道
Quick Tunnel 无需端口转发即可公开本地服务器。
令牌登录
QR 链接包含一个一次性令牌,有效期为 90 秒。兑换令牌后会设置 HttpOnly、Secure 会话 Cookie,并进行 CSRF 检查,每分钟最多兑换 5 次。会话不会过期。
多会话
一个服务器可托管多个 tmux 会话,并支持在应用内切换。
一条命令
npx termbridge 会启动服务器、Cloudflare 隧道和 QR 代码。需要 Node 20+、tmux 和 cloudflared,运行环境为 macOS 或 Linux;不支持 Windows。
CLI 优先
专为终端优先的工作流设计,提供 TTY 状态和 QR 输出。
QR 交接
每次运行都会输出一个 QR 码,其中包含一次性登录链接。在要使用的设备上扫描即可。
开发服务器预览
代理你的本地 Vite 应用,并在终端旁边预览。
HMR 透传
WebSocket 代理可确保 Vite 的 Hot Module Replacement 正常工作。
视图切换
使用底部栏“视图”面板,在终端和预览之间切换。
全栈工作流
运行终端命令,并实时查看应用更新。
为什么选择 Termbridge
无需端口转发或 VPN
无需账户的 Cloudflare Quick Tunnel 会为你的本地服务器提供公共 HTTPS URL。你连接所用的设备只需有浏览器即可。
全屏程序也能运行
node-pty 会连接到 tmux,并报告一个 256 色终端,因此 htop 和 vim 等 TUI 的行为与本地运行时一致。
会话不会因桥接关闭而结束
Ctrl+C 会关闭隧道和服务器,但会让你的 tmux 会话继续运行。再次启动时使用 --session,即可连接到已有会话。
在你的设备上运行
服务器、WebSocket 和终端注册表都在你的电脑上运行,默认监听 127.0.0.1。Termbridge 不运行自己的后端。
对比
从其他设备访问终端还有哪些方式,以及 Termbridge 有何不同。
| 工具 | 擅长领域 | 与 Termbridge 的区别 |
|---|---|---|
| ttyd | 擅长领域ttyd 可通过网络共享任意命令,支持 CJK 和 IME 输入、ZMODEM 和 trzsz 文件传输、Sixel 图像、SSL 和基本身份验证;并可在 macOS、Linux、BSD 系统、OpenWrt 和 Windows 上运行。 | 与 Termbridge 的区别Termbridge 增加了隧道、一次性 QR 登录链接和手机控制栏,并将 shell 保存在 tmux 中,使其在重启后仍能运行。它专为 macOS 和 Linux 打造。 |
| sshx | 擅长领域sshx 只需一条命令即可与任何人共享终端;协作者可在无限画布上看到彼此的光标,并通过端到端加密进行协作;还提供适用于 Linux、macOS 和 Windows 的二进制文件。 | 与 Termbridge 的区别Termbridge 用于访问你自己的终端:每次运行都会生成一个只能使用一次的登录链接,流量通过 Cloudflare 隧道传输到你设备上的服务器。 |
| Tailscale SSH | 擅长领域Tailscale SSH 会处理 tailnet 中 SSH 连接的身份验证和授权,并通过 WireGuard 使用节点密钥加密;任何运行 Tailscale 的设备都可以连接。 | 与 Termbridge 的区别Termbridge 无需在另一台设备上安装客户端或连接专用网络。它会提供公共 URL 和 QR 码,终端则在浏览器中打开。 |
问答
来自 Termbridge 文档的简明解答。
在默认模式下,流量会经过 Cloudflare Quick Tunnel,然后到达你电脑上的 Termbridge 服务器。Termbridge 不运行自己的后端。在 Daytona 沙盒模式下,终端运行于你 Daytona 账户中的沙盒内;在直连模式下,服务器也在沙盒中运行,你通过 Daytona 预览链接连接。
QR 链接包含一个一次性令牌,有效期为 90 秒,且只能使用一次。兑换后会设置 HttpOnly 会话 Cookie,终端 WebSocket 连接也需要 CSRF 令牌。请勿与不信任的人分享 QR 码或 URL。
可以。设置 TERMBRIDGE_SESSIONS=3 即可启动三个 tmux 会话,然后在应用的终端切换器中切换。
官方不支持。Termbridge 专为 macOS 和 Linux 打造。它可能可以在 WSL 中运行,但未经测试。
暂时不行。Cloudflare 是唯一的隧道提供商。你可以在自己的主机名上使用命名 Cloudflare 隧道,禁用隧道并传入自己的公共 URL,或者使用 Daytona 直连模式。
在本地模式下,连接会持续到 Termbridge 停止运行;电脑进入睡眠或 Termbridge 退出时,连接就会关闭。你的 tmux 会话仍会运行,因此你可以重新启动 Termbridge,扫描新的 QR 码,然后使用 --session 连接。在 Daytona 直连模式下,服务器运行在沙盒内部。
安装 Node 20+、tmux 和 cloudflared,运行 npx termbridge,然后扫描 QR 码,即可在手机浏览器中打开终端。