Repolode
tsl0922

tsl0922/ttyd

一个命令行工具,可通过浏览器将任意终端程序分享到网页上。

Star
12,536
Fork
1,212
未关闭 Issue
122
最近提交
2个月前

这是什么?

ttyd 在伪终端中运行指定命令,并通过 HTTP 和 WebSocket 提供访问,任何拿到链接的人都可以在浏览器中查看会话,若开启可写模式还能直接输入。它使用 C 语言基于 libuv 编写,浏览器端采用 xterm.js 并通过 WebGL2 渲染。

工具支持 CJK 字符与输入法,提供 ZMODEM 和 trzsz 文件传输,并能输出 Sixel 图像。访问可通过 Basic 认证、反向代理认证头、客户端证书或基于 OpenSSL、Mbed TLS 的 SSL 加密来保护。命令行参数可设置端口或 UNIX 套接字、运行命令的用户与用户组、只读或可写模式以及客户端数量上限。

项目提供 macOS、Linux、FreeBSD、OpenBSD、OpenWrt 和 Windows 平台的安装包与预编译二进制文件。

核心功能

  • 01通过 xterm.js 在浏览器中分享任意命令行程序,使用 WebGL2 渲染。
  • 02支持 CJK 字符和输入法。
  • 03提供 ZMODEM 与 trzsz 文件传输。
  • 04支持 Sixel 图像输出。
  • 05提供 Basic 认证、认证代理头、客户端证书与 SSL 加密。
  • 06可在 macOS、Linux、BSD、OpenWrt 和 Windows 上运行。

适用场景

  • 临时让同事或技术支持通过浏览器访问 Shell 会话。
  • 在运行 OpenWrt 的路由器或家用服务器上提供网页终端。
  • 通过网页展示长时间运行的命令行工具或监控命令。

快速上手

  1. 1

    在 macOS 上使用 Homebrew 安装

    brew install ttyd
  2. 2

    在 Debian/Ubuntu 上安装

    sudo apt install ttyd
  3. 3

    在 Windows 上使用 WinGet 安装

    winget install tsl0922.ttyd

使用前须知

  • 部分安装方式(如 Gentoo、Windows 编译)需要超出单条命令的手动步骤。

收录于专题

标签

常见问题

ttyd 是什么?
一个命令行工具,可通过浏览器将任意终端程序分享到网页上。 ttyd 在伪终端中运行指定命令,并通过 HTTP 和 WebSocket 提供访问,任何拿到链接的人都可以在浏览器中查看会话,若开启可写模式还能直接输入。它使用 C 语言基于 libuv 编写,浏览器端采用 xterm.js 并通过 WebGL2 渲染。
ttyd 可以免费使用吗?用的什么许可证?
ttyd 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
ttyd 还在维护吗?
半年内有更新。ttyd 最近一次提交是在 2026年8月12日。
ttyd 适合用来做什么?
临时让同事或技术支持通过浏览器访问 Shell 会话。 在运行 OpenWrt 的路由器或家用服务器上提供网页终端。 通过网页展示长时间运行的命令行工具或监控命令。
ttyd 怎么安装和运行?
在 macOS 上使用 Homebrew 安装: brew install ttyd 在 Debian/Ubuntu 上安装: sudo apt install ttyd 在 Windows 上使用 WinGet 安装: winget install tsl0922.ttyd
在哪里获取 ttyd?
源代码和安装说明在 GitHub 上:https://github.com/tsl0922/ttyd

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目