Skip to content

1.0.0

Choose a tag to compare

@xiaoyonghaoe xiaoyonghaoe released this 11 Sep 06:50
· 23 commits to main since this release
  • 原生 AppKit/SwiftUI 工作窗口,按已批准的高保真原型实现统一工具栏、纯会话侧栏、连接带和跟随应用外观的浅色/深色终端;磁盘映射统一从右上角入口进入。
  • 本地 vendored Bonsplit,支持标签、横纵分屏、窗内拖动,以及 Snake 协调的标签拖出独立窗口、跨窗口投放和边缘分屏。
  • 空分栏提供关闭按钮;Command-W 优先关闭当前标签或多余空分栏,仅剩最终空分栏时保持工作窗口。
  • 会话分组、会话编辑、开发阶段明文凭据文件、私钥 security-scoped bookmark;凭据访问已封装,后续可替换密码工具适配器。
  • 会话双击打开终端、右键打开终端/SFTP/编辑/删除,并可拖动到同级分组。
  • 新安装以空工作区启动,不再自动注入示例服务器、示例映射或伪终端输出。
  • Rust/libssh2 TerminalHandle 提供真实 SSH PTY,SwiftTerm 只负责终端渲染与输入;支持密码/私钥认证、严格主机密钥校验、真实协商算法详情、UTF-8 输入输出、PTY resize、远端退出和 30 秒 Keepalive。瞬时连接错误自动重试一次,并按 TCP、握手、通道、PTY、shell 阶段显示错误。
  • Rust/libssh2 SFTP 浏览器,支持严格主机密钥校验、密码/私钥认证、可编辑与复制的路径栏、创建文件/文件夹、重命名、chmod、删除、文件/文件夹上传、远程文件缓存打开,以及 SFTP 分栏/窗口间 1 MiB 内存流式互传。
  • Finder 文件/文件夹可拖到 SSH 终端或 SFTP 内容区上传;原生接收层随标签换窗,按实际落点定位分栏,与 Bonsplit 标签拖动隔离。SSH 使用最近报告的 shell 目录,未知时先确认;SFTP 使用当前目录。实现与验收见 Finder 上传说明。
  • 当前 SFTP 标签上传时在项目统计左侧按需显示迷你进度,完成两秒后收为记录图标;点击可查看本次标签内的文件、路径、大小、时间、耗时和结果,并执行暂停、继续、取消或失败重试。本地上传记录不写入 SQLite。
  • macFUSE/sshfs 依赖检测、映射编辑器、私钥 SSHFS 挂载、Finder 打开、安全卸载与受约束的 SnakeMountHelper。
  • Finder 磁盘名称显示“映射名称 · SSH 会话名称”;挂载状态以系统实际挂载表为准。彻底退出应用前会等待正在进行的挂载操作并安全卸载已配置的受管挂载;卸载失败则取消退出并提示占用原因。仅关闭窗口不会卸载。
  • Rust snake_core 已包含 SQLite v1 schema、会话/映射/传输记录 CRUD、异常任务中断恢复、UniFFI Swift 绑定和双端往返测试。
  • 调试 App 内嵌 Rust 动态库与 Mount Helper,使用 @rpath 并进行本地 ad-hoc 签名,可脱离工作区动态库路径启动。