kingToolbox / kingToolbox/WindTerm
受 WindTerm 启发的开源轻量终端 EdgeTerm:不到 5 MB 安装包,SSH / SFTP / FTP / 串口,时间戳行号侧栏,原生 Apple Silicon
- Dominant language
- C
- Stars
- 32.3k
- Forks
- 2.5k
- PR merge metrics
- No merged PRs in 30d
Description
大家好,
和这里的很多人一样,我用 WindTerm 很多年,也一直在等它更新。它对我来说最不可替代的,我把市面上能找到的替代品都试了一遍,几乎没有一个能有WindTerm的感觉。
所以我自己写了一个:**EdgeTerm** —— 一个小巧、开源(MIT)的终端 / SSH / SFTP / FTP / 串口客户端,Rust + Tauri 构建。
- 仓库:https://github.com/miskin-lee/EdgeTerm
- 下载:https://github.com/miskin-lee/EdgeTerm/releases/latest
- 主页:https://miskin-lee.github.io/EdgeTerm/


## 先说数字:整个安装包不到 5 MB
| 安装包(v0.5.8) | 下载体积 |
| --- | --- |
| Windows x64 安装程序(`.exe`) | **3.9 MB** |
| macOS Apple Silicon(`.dmg`) | **4.7 MB** |
| Linux `.deb`(x64 / ARM64) | **5.4 MB** / **5.2 MB** |
不打包 Chromium,不带运行时,一个原生二进制加系统自带的 WebView。有人对 Tauri 有顾虑,这点我放在下面「坦白说」里单独讲。
## 为什么值得你花两分钟试一下
**把 WindTerm 最有辨识度的东西做回来了**
- **时间戳 + 行号侧栏**:每一行输出带 `[HH:MM:SS.SSS]` 和累计行号,光标行高亮,四种显示模式可切换。侧栏用原生 DOM 直接更新,不走 React 渲染,串口刷屏也不卡。
- **Session / Filer / Sender 三面板布局**:左侧会话树(可嵌套分组、右键管理、双击连接),右侧文件浏览器(SSH 下自动变成 SFTP,支持文件和文件夹上传下载、拖拽上传),底部批量发送(文本 / 十六进制、按行 / 按字符、重复次数、间隔、发给当前或全部会话)。
- **Sender 的常用命令带作用域**:可以只对某个会话、某个分组、某一类会话(串口 / SSH / Shell)或全局生效,当前标签页只看到用得上的。
**WindTerm 现在做不到、而 issue 区一直在问的几件事**
- **macOS Apple Silicon 原生包**(issue 区反复有人在要)。
- **主机密钥变化会明确弹窗**告诉你新指纹、`known_hosts` 里的哪一行,确认后才替换重连;首次连接自动记录(accept-new)。
- **凭据文件自动加密**:密码和私钥口令存在单独的 `credentials.json`(Unix 下 `0600`),用 HKDF-SHA256 + ChaCha20-Poly1305 加密,密钥绑定本机,不需要你设主密码。说明一下:这是静态文件保护,不是系统钥匙串那种硬件级保护,对安全要求高的建议用 ssh-agent 或无口令公钥。
- **应用内自动更新**:启动时检查最新 Release,可以原地更新。
**其他你大概率会用到的**
- 会话类型:本地 Shell(真 PTY,Shell 字段可以直接写 `wsl.exe -d Ubuntu` 或 `pwsh -NoLogo`)、SSH(密码 / 公钥 / ssh-agent)、独立 SFTP 会话(直接进双栏文件管理器)、FTP(自动识别 UTF-8 / GBK 文件名)、串口(波特率 / 数据位 / 停止位 / 校验 / 流控)。
- **ZMODEM**:SSH、串口、本地 Shell 里直接 `rz` / `sz`,自动识别。
- **命令补全**:记住你敲过的命令,输入时弹出历史匹配,`↓` 选择、`Enter` / `Tab` 采纳,不选的时候按键照常发给 shell。
- 文件传输全程流式、固定 1 MiB 缓冲,几十 GB 的文件也不会把内存吃满。
- 深色 / 浅色主题,缓冲区搜索,⌘1–9 / Alt+1–9 切标签,会话 / 命令 / 设置一键导出导入。
- Windows / macOS / Linux(x64 + ARM64)全平台发布。
如果你在等一个「小、快、有时间戳行号、跨平台、开源」的终端,我觉得 EdgeTerm 值得你试一下:https://github.com/miskin-lee/EdgeTerm/releases/latest
最后,感谢 WindTerm 和 @kingToolbox 这么多年带来的启发。如果维护者认为这类分享不适合放在 issue 区,请直接关闭,不会有任何意见。
---
English summary
**EdgeTerm** is a small, MIT-licensed terminal / SSH / SFTP / FTP / serial client built with Rust + Tauri, inspired by WindTerm. Installers are under 5 MB (Windows 3.9 MB, macOS Apple Silicon 4.7 MB, Linux 5.4 MB). It brings back WindTerm's timestamp + line-number gutter, the Session / Filer / Sender three-panel layout, ZMODEM `rz` / `sz`, command suggestions, encrypted credential storage, an explicit host-key-changed dialog, and an in-app updater. Native Apple Silicon and Linux ARM64 builds are available. Known limitations: it renders through the system WebView (xterm.js) rather than a native GPU renderer, there is no WindTerm session import yet, no Telnet / tmux / RDP / split panes, and the builds are not signed or notarized.
Repo: https://github.com/miskin-lee/EdgeTerm · Releases: https://github.com/miskin-lee/EdgeTerm/releases/latest
Contributor guide
No contributing guide indexed for this repository
Research direction
The issue presents the external EdgeTerm project and does not identify a requested change, WindTerm file, entry point, or test. No implementation target or completion criteria are provided, so a contributor cannot determine what to read, run, or modify from this issue alone.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust, tauri
- Domain
- cli, desktop
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 10/100