logo NodeSeekbeta

[开源自荐]空载内存砍掉 75%,SSH 工具 OxideTerm 用 Rust+GPUI 完全重写为原生软件,不遥测不收费不套壳,可平替windterm等软件

12345
  • 支持,请问后面考虑支持 SPICE 远程桌面协议么?
    连接虚拟机 SPICE 比 VNC 流畅很多,就是有剪贴板共享、USB 共享之类的功能稍微有点复杂

  • @nocwat #31
    会考虑。SPICE 很适合虚拟机场景,但它不只是增加一个连接协议,还涉及画面、键鼠、动态分辨率、剪贴板、音频和 USB 重定向等能力,目前还没有确定排期。

  • 安全审查报告:OxideTerm

    审查范围:整个代码库(~85 个 crate,agent 独立二进制文件,GitHub Actions 工作流,构建脚本)。未发现后门、数据外传、远程控制机制或可疑的加密字段。


    网络通信

    所有的网络外发请求都是用户配置的、有文档记载的端点:

    • AI 提供商 — 向用户提供的 Anthropic、OpenAI、Gemini、Ollama、DeepSeek 等 API 端点发起请求。API 密钥由用户提供,存储在 OS 凭据管理器中,绝不硬编码。
    • 云同步 — WebDAV、S3、OneDrive、GitHub Gist、Git。由用户显式配置;没有对 OxideTerm 所有方服务器的隐藏调用。
    • 更新检查 — 从 github.com/AnalyseDeCircuit/oxideterm/releases 获取清单。下载的包使用嵌入的 integrity.rs 中的 minisign 公钥进行签名验证。
    • 插件/WASM 运行时 — 从 github.com/AnalyseDeCircuit/oxideterm-wasm-runtime/releases 获取。

    没有遥测、分析、崩溃报告或第三方追踪系统。 i18n 字符串中明确说明了这一隐私承诺。


    加密

    所有加密都有合法的安全目的:

    用途 算法 位置
    静态连接配置 ChaCha20-Poly1305(通过 OS 密钥链派生的密钥) encrypted_config.rs
    密码保护的导出文件(.oxide) Argon2id 密钥派生 + ChaCha20-Poly1305 crypto.rs
    更新签名验证 Minisign(公钥:36E19D6992B57EBB) integrity.rs
    敏感数据内存保护 机密材料使用 zeroize::Zeroizing 贯穿代码库始终
    AI 上下文清理 将私钥、令牌、密码、授权头替换为 [REDACTED] context_sanitizer.rs

    唯一被硬编码的密钥是更新公钥 —— 这是验证签名更新所必需的,属于标准做法。


    代理 / 远程执行

    agent/ 目录是 OxideTerm 远程代理:一个独立的二进制文件,通过 SSH 通道在远程主机上运行,接收 stdin/stdout 上的 JSON-RPC 命令。功能包括文件读写、grep、符号索引和目录列表。它不发起任何网络连接 —— 仅在 stdin/stdout 上响应。依赖项仅有 serde、regex、sha2、walkdir —— 不含 HTTP 或套接字。

    传输层通过 SSH exec 通道传递:transport.rs。


    自动启动 / 持久化

    autostart.rs 使用标准的 OS 机制:Windows 注册表 Run 键、Linux XDG autostart .desktop、macOS SMAppService。用户可配置、透明、可逆。无隐藏持久化。


    插件系统

    插件以 WASM 沙箱运行(wasmtime)。它们由用户手动安装。无自动下载或执行。constants.rs 中对包大小(50 MB)、解压后大小(100 MB)和条目数(2048)有显式限制。


    SSH 主机密钥

    host_key.rs 实现了带有 Unknown/Changed/Verified 状态的 TOFU(首次使用即信任)主机密钥验证。主机密钥缓存在内存中,有效期为 1 小时。未发现服务器认证绕过。


    供应链

    Cargo.toml 包含 deny.toml(cargo-deny 配置),可防止已知的有漏洞依赖项。所有依赖项均来自标准 crates.io。未发现可疑或混淆的依赖项。


    结论

    未发现后门、数据外传或可疑的加密字段。 代码库干净,隐私意识强(AI 请求前清理机密,无遥测),加密使用得当且目的明确。网络通信仅在用户配置的情况下发生,且配置了签名验证,以防供应链攻击。

  • 支持一下

  • 1K star了,给你点赞
    简单体验了一下,主要还是性能问题,有点卡顿
    功能有一点点多了,搞到无所适从,另外sftp文件传送没摸到在哪里,还以为侧边栏可以直接打开

    其实这类终端最牛的还是mobaxterm,易操作,性能,功能都很牛,就是支持ai cli不行
    如果这个项目性能能够提升上去,就可以成为win下面的王者了

  • @richno #36
    让ai调查了一下:

    目前最可疑的组合是:
    Windows 使用 DirectWrite + D3D11。
    三缓冲翻转交换链
    使用 Present(0, 0),不由 Present 等待垂直同步
    另起 DWM 垂直同步线程,每一帧都触发窗口重绘检查
    100 毫秒内达到 6 个有效输入事件后,会持续 Present 一秒
    这套设计在高刷新率、VRR、多显示器或部分显卡驱动环境下,很可能产生帧队列堆积或不均匀的帧节奏。Metal 后端使用另一套显示同步机制,所以 macOS 丝滑并不矛盾。
    

    所以卡顿倒也不是性能不行(原生软件,不太可能性能比webview差),是windows渲染链路的问题,我看看怎么修改一下项目的渲染引擎的源码吧

  • 有机会支持mosh和et吗?

  • 👍

    我的思路很简单:同步功能应该像本地保存一样自然,用户不需要为此信任一个新的商业实体,也不需要为此付费。
    
12345

你好啊,陌生人!

我的朋友,看起来你是新来的,如果想参与到讨论中,点击下面的按钮!

📈用户数目📈

目前论坛共有72269位seeker

🎉欢迎新用户🎉