Repository navigation
Releases: lemoncat7/dsh-ssh
Release list
v1.11.3
1.11.3 · 统一工作台交互与聊天临时授权
适配 DeepSeek Harness 0.2.0-rc.2;需要 Node.js ^22.19.0 或 >=24.0.0。不改变现有宿主版本约束。
工作台样式
- 与知识库工作区统一圆角按钮、输入框、搜索、下拉框及短动效;覆盖终端、主机、代理、文件传输和配置弹窗。
- 弹窗按视口居中、自适应宽高,统一头部、关闭入口和底部操作区;保留浅深主题、窄屏和减少动画支持。
- 不改变主机挂载、终端会话、凭据和文件传输行为。
临时 SSH 授权
- 核验当前真实用户消息中的明确主机操作授意,不再强制请求独立审批弹窗。不会将 Agent 自报同意、旧聊天、工具输出或后台通知当成用户授权。
- 语义不明确时返回完整授权范围,在聊天中等待用户确认;短确认绑定原申请及主机配置,10 分钟内有效,不能改换目标或任务。
- 普通授权仅当前执行轮次有效;结束、停止、错误、释放或重启后失效,不改变永久挂载。
- 搭配伙伴插件 2.8.4,可为明确指定的看板任务和执行伙伴授权:任务暂不运行,授权通过后再提交;仅一次执行、最长 60 分钟,不自动共享给其他伙伴、验收者或重试。
- 临时授权只提供远端命令及工作目录,不自动开放文件传输、交互终端或端口转发。任务说明不是逐条命令沙箱;远端自行启动的后台程序不保证随本地撤销而退出。
验证与升级
- 192 项测试通过;跨插件模拟验证用户授意、指定任务绑定、执行边界及撤销。
- 工作台浏览器回归覆盖 375 / 1024 / 1600 像素、浅深主题;功能代码与已部署的
1.11.3-style.3试用版一致。 - 无数据迁移。升级插件并重启对应 Profile,刷新页面;临时授权不会跨重启恢复,旧受阻任务不会因升级自动重跑。
使用说明:https://github.com/lemoncat7/dsh-ssh/blob/main/docs/temporary-access.md
1.11.2 · 会话状态与文件预览优化
1.11.2 · 会话状态与文件预览优化
适配 DSH 0.2.0-rc.2;需要 Node.js ^22.19.0 或 >=24.0.0。
- 打开 SSH 工作台时保留左栏当前会话高亮。
- 优先选择当前会话挂载的主机,自动展开对应分组;普通刷新尊重手动折叠状态。
- 右栏按会话保留标签页、主机、浏览目录、文件预览和目录滚动位置,切换会话或关闭再打开不再初始化。状态仅在当前页面生命周期内保留,不跨浏览器刷新。
- 扩展 SQL、TXT、脚本、配置等文本预览;未知后缀也尝试识别 UTF-8 或带 BOM 的 UTF-16。过大、二进制或无法读取的文件显示下载入口。
- 文本预览上限 1 MiB,图片/PDF 上限 16 MiB。恢复预览重新鉴权,不缓存内容或授权,不改变主机、密钥和传输配置。
验证:187 项测试通过;375px 和 1200px 隔离浏览器检查通过;线上修复部署后的服务健康、编译文件一致性和文本预览运行检查通过。
详见 会话工作台与文件浏览状态。
安装包与 npm @lemoncat7/dsh-ssh@1.11.2 的 SHA-512 校验一致。
SHA-256:248009efbbf149ad43afaf41f17bcab0610c8f1dc6439a79b7fc1062147ce095
1.11.1 · DSH 0.2.0-rc.2
1.11.1 · 终端中断与挂起修复
适配 DSH 0.2.0-rc.2;需要 Node.js ^22.19.0 或 >=24.0.0。
- 修复 #3、#4:不再通过 SSH channel.signal 向会话 shell 投递信号;SIGTSTP 改用 Ctrl-Z,SIGINT/QUIT 使用 Ctrl-C/Ctrl-\。
ssh_terminal_signal返回inputWritten: true和mechanism: pty-control-byte,不再伪造delivered: true, targetPgid: 0。- 调用方注意:工具只支持 SIGINT、SIGQUIT、SIGTSTP。SIGTERM/KILL/HUP 不再宣称支持;关闭终端使用 ssh_terminal_close。宿主要求真实前台 PGID 的接口在无法验证时明确报错。
- 取消发送使用 Ctrl-C;终端退出、写入失败或无效信号不返回成功。
- 验证:182 项测试(umask 022);隔离 Linux PTY 实测 Ctrl-C 中断、Ctrl-Z 挂起前台 sleep。没有向用户远程主机发送测试信号。
原始模式或自定义 stty 可能改变控制字符处理;写入成功不等于已经验证进程收到 POSIX 信号。升级不改变主机、密钥、授权或传输配置。
安装包 SHA-256:202c4c93a0d07c1d7131c0bd35226115f118878c8f46ddc5f4904d52a4a16961
附件与 npm 发布包完全一致。
1.11.0 · 主机分组管理与临时授权
1.11.0 · 主机分组管理与临时授权
- 支持主机拖动到其他分组,分组默认折叠;编辑主机时也可选择分组。
- 顶部新增菜单提供新增主机、新增分组;分组可独立保存,支持名称和默认代理。
- 主机右侧菜单提供编辑主机、添加固定目录,移除工作台重复编辑入口。
- 分组编辑支持一键重置组内主机代理,以及删除分组;删除后主机与固定目录保留,主机移到未分组。分组代理移除后,原继承代理的主机将直连,需重连生效。
- 支持按主机名、完整 IP 或唯一 IPv4 尾号申请本轮临时 SSH 命令授权。用户确认后生效,本轮结束、停止或报错自动撤销,不改变永久挂载、不继承给其他会话。详见 临时授权说明。
- 菜单支持键盘操作,分组操作使用紧凑文字按钮并提供二次确认。
适配 DSH 0.2.0-rc.2,需要 Node.js ^22.19.0 或 >=24.0.0。已完成构建、分组与临时授权测试、375px/1024px 页面检查及本地容器部署验证。
已发布 npm @lemoncat7/dsh-ssh@1.11.0,也可通过本 Release 附件 URL 安装。
SHA-256: ef6189af873d3c4bcc3ee2201398b32630f97e57403b1a283212e11d8e5306da
1.10.5 · 适配 DSH 0.2.0-rc.2
1.10.5 · DSH 0.2.0-rc.2 兼容发布
- 更新宿主依赖与兼容声明,配套 DSH 0.2.0-rc.2;需要 Node.js ^22.19.0 或 >=24.0.0。
- 保留现有功能;未修改 DSH 核心源码。
- 已完成七插件回归及隔离宿主验证,正式环境工作区、设置接口验收通过。范围与限制见 兼容说明。
- 宿主仍处于 RC。旧宿主请保留 1.10.4 和配套数据备份,升级前备份配置与数据。
附件安装包与 npm @lemoncat7/dsh-ssh@1.10.5 完全一致。
1.10.4 · 文件传输交互优化
1.10.4 · 文件传输交互优化
插件正式版,适配并验证 DSH 0.1.7-rc.2。Node.js ^22.19.0 或 >=24.0.0。
- 文件点击已经使用预览/下载弹窗,因此移除容易造成重复操作的“传送到下一栏”按钮;跨栏传输统一使用拖放。
- 拖放传输遇到目标同名冲突时,直接打开处理弹窗,无需先到任务列表点击“处理”;任务列表入口仍保留作键盘操作和异常恢复的兜底。
- 选择跳过、覆盖或自动改名并成功重新排队后,原失败任务会从界面和服务端历史中删除,不再与新任务同时显示。
- 文件传输页首次打开后保持挂载;在 SSH 工作台切换终端、命令、设置等标签再返回时,保留连接、目录、选中项、滚动位置、任务页和弹窗状态。
验证:Node.js 24 下完成构建与 173 项自动化测试。保留拖放以外的键盘可操作入口,不修改用户配置和传输数据格式。可回退至 1.10.3。
本条补齐已有 npm 版本的 GitHub 发布记录,保留原版本和历史源码,不代表新的功能发布。
安装包与 npm @lemoncat7/dsh-ssh@1.10.4 的 SHA-512 校验一致。
SHA-256:2a08d3d22924955045e46f9a6a75d912e1c53c699393bf5f54b86ae268e0ee8f
1.10.3 · 适配 DSH 0.1.7-rc.2
1.10.3 · 会话事件订阅修复
插件正式版,适配并验证 DSH 0.1.7-rc.2。Node.js ^22.19.0 或 >=24.0.0。不声明兼容未经测试的宿主版本。
- 切换会话时,只有当前会话自身的终端权限才能开启活动事件订阅,避免旧会话权限触发新会话的 403。
- 等待新会话权限加载期间,不再显示上一会话挂载的主机。
- 不扩大权限,不修改数据库或用户配置;不将此修复描述为浏览器 hover 修复。
验证:构建与 170 项自动化测试通过。可回退至 1.10.2。
附件安装包与 npm @lemoncat7/dsh-ssh@1.10.3 完全一致。
1.10.1 · 适配 DSH 0.1.7-rc.2
1.10.1 · 启动与交互性能优化
正式补丁版本,适配并验证 DSH 0.1.7-rc.2(宿主为 RC,插件为正式版)。Node.js ^22.19.0 或 >=24.0.0。
合并并发主机读取,修改配置后立即失效;并行读取主机与会话授权,避免切换会话时旧请求覆盖新状态。
验证:167 项测试通过;正式容器已完成面板、设置、渠道及 hover 交互检查。详细实现见 docs/startup-performance.md。
不修改用户数据结构、授权规则或业务流程。本轮仅优化启动与重复工作,不保证所有设备完全消除卡顿。如需回退,可安装上一正式版 1.10.0,保留原配置和数据。
附件安装包与 npm @lemoncat7/dsh-ssh@1.10.1 完全一致。
1.10.0 · 适配 DSH 0.1.7-rc.2
1.10.0 · 适配 DSH 0.1.7-rc.2
插件正式版(非 prerelease),已验证宿主:DSH 0.1.7-rc.2。宿主本身仍是 RC,不代表已验证所有未来版本。Node.js:^22.19.0 或 >=24.0.0。
更新
适配主视图持有的当前会话、会话导航、图标与事件处理器返回契约;保留主机、跳板链、终端及文件传输功能。
升级与回退
- 本版面向 DSH 0.1.7-rc.2,不应直接安装到 DSH 0.1.5 或更早宿主。
- 升级前源码快照:
pre-dsh-0.1.7-rc.2(提交 f8b7f2c,插件源码版本 1.9.2)。历史正式标签保留,不移动或覆盖。 - 旧版 npm 安装参考:
npm install @lemoncat7/dsh-ssh@1.9.2;升级宿主前先备份配置、数据库及工作目录。 - 新版安装:
npm install @lemoncat7/dsh-ssh@1.10.0。
验证边界
本地构建和自动化测试通过;DSH 0.1.7-rc.2 隔离容器已验证插件启动、适用的设置页面和接口。正式容器已经部署对应兼容代码并完成页面/API 冒烟检查。
未穷举 Windows/macOS 桌面桥、真实远端 SSH/FTP、所有渠道端到端附件投递及付费模型提供方。没有把本次验证扩大为对所有外部服务的保证。
附件安装包与 npm @lemoncat7/dsh-ssh@1.10.0 完全一致。
1.9.2 · 文件传输授权简化
1.9.2 · 文件传输授权简化
支持 DSH 0.1.5-rc.1 系列,Node.js ^22.19.0 或 >=24.0.0。保留既有旧宿主兼容声明。
- 会话的文件传输权限统一包含当前会话目录内的上传与下载,移除重复的独立开关。
- 工具可见性、端点列表和界面说明与实际授权保持一致。
- 保留授权端点限制、会话目录边界和传输审批;浏览权限不允许传输。
本条补齐已有 npm 版本的 GitHub 发布记录,保留原版本和历史源码,不代表新的功能发布。
安装包与 npm @lemoncat7/dsh-ssh@1.9.2 的 SHA-512 校验一致。
SHA-256:395b59ba4defe7abb19b6f7fa59ad6172d386f400547c9633474a40a7d7bd7e2