爱意满满的作品展示区。
soleilune

[开源]或许是 WindTerm 精神的续作: SSH 客户端 OxideTerm 焕新为原生软件, Windows 空载内存仅 25 MB

  •  
  •   soleilune · 9h 17m ago · 627 views

    大家好,我是 OxideTerm 的作者。

    WindTerm 是很多人的心头好,极低的内存占用、原生级的流畅度,很少有替代品能完全复现。但它已经停更一年多了,积压的 Issue 长期也似乎无人修复,当然我也很希望作者能够再度更新。现在不少朋友一直在找下一个归宿,但市面上大多是 Electron/Tauri 的 WebView 应用,空载几百兆起步,很难找回那种轻快感。

    我自己一直很尊重 WindTerm 坚持原生、不妥协的产品理念,也在做一款开源 SSH 工具 OxideTerm。我的 1.x 是用 Tauri 写的,很快就撞到了 WebView 的天花板:

    • 空载吃内存:即使没打开任何会话,浏览器引擎、DOM 和 JS 运行时的固定开销就占着几百兆。
    • 前后端跨语言通信效率受限:终端内容要跨越 Rust 和前端 JS 之间的数据链路,大日志刷屏时压力可能不小。

    我发现局部优化解决不了架构问题。所以我做了一个决定:抛弃 WebView ,用纯 Rust 和 GPUI ( Zed 编辑器用的原生 GPU 渲染框架)完全重写了它。通过移除 WebView 、DOM 和 JavaScript 运行时,更换数据链路 ,我们省去了跨语言的序列化和 IPC 。macOS 空载从 320MB 降到了 80MB 出头,Windows 则从约 180MB 降到了 25MB 。 (自己的机器实测)

    内存对比

    最近刚好过了 1000 Star 门槛,历经大量 issue 反馈,算是有了一定完成度,所以发出来再和大家分享。

    OxideTerm 和 WindTerm 有什么共同点?

    • 原生高性能(无 WebView / 零 DOM 开销):我们都彻底避开了 WebView/Electron ,界面由 GPU 硬件直接渲染,不经过任何浏览器引擎层。这带来了实打实的性能与内存优势:目前 OxideTerm 在 Windows 下的空载内存仅约 25 MB( macOS 约 80MB )。
    • 免费 & 开源:项目完全开源 (GPL-3.0),目前没有任何订阅或专业版限制。

    OxideTerm 有什么不同?

    如果说 WindTerm 是上一代经典的代表,OxideTerm 则试图在原生性能的基础上,加入现代化的能力。

    另外我们的 UI 并没有完全复刻 WindTerm——这是有意为之,目的是提供更现代的信息架构和交互体验,而不是做一个外观上的克隆。

    • 平滑迁移:支持从其他 SSH 客户端导入已有连接配置,不用从头手动录入。
    • 原生 RDP / VNC 支持:除了基础的 SSH/SFTP ,内置了基于 Rust IronRDP 的原生桌面连接的部分能力。
    • Host Tools 工作区:我们在右侧面板集成了 Docker 、进程、tmux 、systemd 服务等图形化管理工具,通过复用当前的 SSH 连接通道实时抓取。目标是消除传统 SSH “开一堆终端敲命令”的割裂感,打造一个集成驾驶舱。
    • 现代化的 AI 助手 OxideSens:内置 AI ,支持带终端上下文的对话。可以帮你分析报错、生成修复命令,你可以选择自己的大模型提供商( BYOK )。
    • 终端核心换代:底层换成了 alacritty_terminal,并添加支持 Sixel/Kitty 图像协议,可以在终端里直接预览图片。

    Host Tools

    • 云同步:支持 WebDAV 、S3 兼容存储、OneDrive 、GitHub Gist 等后端同步配置。所有数据上传前在本地加密,没有任何中央服务器。

    云同步

    • 同款 Free Type Mode 自由输入模式:可以直接用鼠标点击命令行的任何位置移动光标,选中文本直接退格删除(不用在远程机器装任何脚本,纯端侧实现)。
    • 高速 SFTP 传输:我们对 russh-sftp 做了自维护的改造优化,上传下载速度相比社区版有了显著提升。
    • 独立 CLI 工具:不启动桌面应用也能完成环境诊断、连接管理、云同步和便携包导入导出,方便接入脚本与 CI 。

    会话管理

    代码与审计

    我知道对于 SSH 客户端,大家最关心的是安全

    • 连接配置和敏感凭据在本地加密存储,加密密钥由操作系统密钥链管理
    • 内存中的敏感数据使用后即时擦除( zeroize ),避免密钥残留
    • 无遥测上报、无后台数据收集:应用不会主动向外发送任何使用数据,你不告诉我们,我们就什么都不知道
    • 项目目前分为了 80 多个独立 crate ,代码完全开源。

    写在最后

    项目完全用爱发电。当时写这个项目的初衷很简单,受够了市面上的订阅制工具,就想给自己搓个顺手的。不知不觉坚持了 8 个月,又因为尝试剥离 WebView 完全重写了底层,从 Tauri 换成了 GPUI ,熬到了 2.0 。接下来不出意外的话还会继续维护下去。

    如果你也是一个原生体验的追求者,不太喜欢 Electron 和 Tauri 架构下 Webview 的内存占用,欢迎来试试看。觉得好用的话点个 Star ,如果有任何建议或遇到了使用问题,欢迎在帖子里回复,或者直接去 GitHub 提 issue ,我看到都会尽量回复——项目比起 WindTerm 这样历经大家打磨的璞玉,毕竟还算年轻。

    GitHub: https://github.com/AnalyseDeCircuit/oxideterm

    官网:https://oxideterm.app

    11 replies    2026-07-26 02:08:25 +08:00
    Mora1n
        1
    Mora1n  
       9h 12m ago
    哇噻帮顶! nyaterm 也不错
    Salute
        2
    Salute  
       8h 54m ago
    体验了一下,感觉很棒,star 了。这么大的项目,一个人能维护的过来吗
    soleilune
        3
    soleilune  
    OP
       7h 45m ago
    @Mora1n 谢谢! NyaTerm 也是很好的项目。我稍稍看了一眼,他目前是基于 Tauri 的,UX 更贴近 WindTerm 老用户的操作习惯,当然也有可能有很多优点我没有仔细挖掘;我们选择的方向是彻底去掉 WebView ,用 GPUI 原生渲染,也都算是各自继承了 WindTerm 精神的一部分吧,也希望他能做的越来越好。
    rainrdx
        4
    rainrdx  
       7h 7m ago via iPhone
    以前觉得没有好用的,现在终端怎么出来这么多!我的要求其实就是底层高效,前端跨平台原生,简单同步密码和 ssh key ,长期保持更新。先围观下这个…
    liuliuliuliu
        5
    liuliuliuliu  
    PRO
       6h 44m ago
    别的先不说,抛弃 WebView/Electron 的软件我就要支持一下
    SayHelloHi
        6
    SayHelloHi  
       5h 54m ago
    @soleilune

    macOS 版本能添加一个 brew 的安装方式么~ 😁
    soleilune
        7
    soleilune  
    OP
       5h 52m ago
    @SayHelloHi 有的,

    'brew install --cask AnalyseDeCircuit/tap/oxideterm'
    Salute
        8
    Salute  
       4h 36m ago
    RDP 可以做保存配置的功能吗(和 ssh 一样保存用户名 ip 端口等)
    soleilune
        9
    soleilune  
    OP
       4h 34m ago
    @Salute 还好吧,有 AI 辅助的话问题基本不大
    soleilune
        10
    soleilune  
    OP
       4h 33m ago
    @Salute 这个是我忘记做了,应该要作为一种资产能够保存下来的,我看看后面补上吧
    zhs227
        11
    zhs227  
       3h 48m ago
    用 vi 查看日志文件的时候,发现有一些形似文件名的地方会被高亮,找了一圈没有找到关闭的地方,能否做个配置。同样的文件用 less 等查看时也会自动高亮。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   911 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 59ms · UTC 21:56 · PVG 05:56 · LAX 14:56 · JFK 17:56
    ♥ Do have faith in what you're doing.