okooo
81aeb37aee
终端粘贴截图:写成文件并把路径打进输入行
...
本地终端和已保存主机的远程终端里,剪贴板只有图、没有文字时,⌘V / Ctrl+Shift+V 或右键粘贴不再丢掉图片。图存成 PNG 等文件后,把路径当作文字粘进输入行,给终端里的 Agent 读。
本地写到系统临时目录 shellrs-pastes/(目录 0700、文件 0600),超过 20 个或超过 7 天的旧文件会清掉。已保存的主机另开一条 SFTP 把文件写到远端 /tmp/shellrs-paste-….png,连上后再粘路径;登录要问答就直接失败,不弹框。超过 8 MB 拒绝。外部连接和临时连接提示不支持。剪贴板里有文字时仍粘文字。
v0.1.10-beta.2-win
2026-10-13 02:26:58 +08:00
Xuz and Claude Opus 5.5
fd4d37946b
已连接的标签不再显示状态点,只在连接中和断开时显示
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-13 00:46:08 +08:00
Nex-Z
743bd9d5e5
标签显示连接状态,远程终端断线后可按 Enter 重连
2026-10-13 00:40:05 +08:00
Xuz and Claude Opus 5.5
8642ab5611
主机名称不再标为必填,CLI 帮助说明默认用地址
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-13 00:08:16 +08:00
Nex-Z
6a94958cd9
修正 UI 测试读取异步结果的时序
2026-10-13 00:01:21 +08:00
Nex-Z
31a509167c
UI 测试使用跨平台语义快捷键
2026-10-13 00:01:21 +08:00
Nex-Z
78fd216fb6
主机名称留空时默认使用连接地址
2026-10-13 00:01:21 +08:00
Xuz
0dfa3fdf77
发布 0.1.10-beta.2 并补充 WinSCP 兼容更新日志
2026-10-12 22:22:53 +08:00
Xuz
ff1efaf151
Windows 版本资源同时兼容 Xshell 和 WinSCP 堡垒机校验
2026-10-12 22:22:28 +08:00
Xuz
bd7b8c1e3a
发布 0.1.10-beta.1 并补充更新日志
2026-10-12 20:38:17 +08:00
Xuz
959e0b1d9d
Windows 版本资源增加 Xshell 标识以兼容堡垒机启动器
2026-10-12 20:35:39 +08:00
Xuz and Claude Opus 5.5
e3397dabc7
主机密钥变更时可以直接「更新并连接」,不用手动改 known_hosts
...
服务器重装或换了密钥后,连接只弹出「服务器主机密钥已变更」并要求手动处理 known_hosts。现在
这个弹框和首次连接一样等用户回答:「更新并连接」删掉这台主机(host:port)记下的全部密钥、
记下现在的再继续登录(同 ssh-keygen -R),「取消」不连接。跳板主机同样。测试连接、外部 CLI
和端口转发的自动重连没人能回答,当场拒绝并照旧说明原因。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 14:49:58 +08:00
Xuz and Claude Opus 5.5
3b06f6f516
版本号改为 0.1.9
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 21:44:55 +08:00
Xuz and Claude Opus 5.5
1f542b692d
Windows 安装程序覆盖安装时也按系统语言显示,不沿用上次安装的英文
...
Inno Setup 的 UsePreviousLanguage 默认打开,覆盖安装时沿用上一次安装的语言。0.1.9-beta.1
之前的安装程序只有英文,于是装过旧版的电脑上新安装程序仍是英文。现在关掉它,每次都按
Windows 的显示语言选择。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 21:44:44 +08:00
Xuz and Claude Opus 5.5
69e641c2bd
Windows 本地终端的标签只显示程序名,不显示完整路径
...
Windows 控制台把正在运行的程序的完整路径设成标题,标签显示成
「C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe」「C:\Windows\system32\cmd.exe」。
现在标题里的程序路径显示为程序名(powershell、cmd、cmd - ping localhost),其余标题不变。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 21:41:27 +08:00
Xuz and Claude Opus 5.5
f69518950e
版本号改为 0.1.9-beta.1
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 20:56:01 +08:00
Xuz and Claude Opus 5.5
cf80884221
Windows 安装程序按系统语言显示简体中文或英文
...
脚本原来只在编译机自带 ChineseSimplified.isl 时才加中文,而 Inno Setup 安装时不带这份非官方
翻译,CI 打出来的安装程序一直是英文。现在把 issrc is-6_7_1(windows-2025 上的版本)的
ChineseSimplified.isl 放进 packaging/windows/Languages,英文和简体中文都打进去,按 Windows
的显示语言自动选择、不弹选择框;其他语言用英文。Inno Setup 低于 6.5 时编译报错。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 20:55:42 +08:00
Xuz
da00974786
调整应用图标外部留白以匹配 macOS 图标尺寸
2026-10-11 20:13:31 +08:00
Xuz and Claude Opus 5.5
4acba3a0f8
自定义快捷键可以用 Shift 加 Insert、Delete 等键,如 Shift+Insert 粘贴
...
快捷键原来只认带 Ctrl / Alt(macOS 是 ⌘⌥⌃)的组合和功能键,Shift+Insert 这种 Windows、
Linux 上常用的粘贴键被当成打字的键拒绝。现在 Shift 加 Insert、Delete、Home、End、
PageUp、PageDown 也可以设;单按这些键和 Shift 加方向键仍然拒绝,和输入框的键冲突时照样
拒绝。功能键只收 F1–F12,与提示文字一致。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 19:54:24 +08:00
Xuz and Claude Opus 5.5
cd489a5fc2
设置 › 终端新增「本地终端」:指定 Shell;Windows 默认改用 PowerShell
...
本地终端运行的程序可以写路径或命令,带参数;输入框右端的下拉列出装了的常用 shell
(zsh、bash、sh、fish、nu、pwsh,从 /etc/shells、PATH 和 Homebrew 目录找),旁边
「选择文件…」用系统的文件选择框。留空是自动检测,新开和重新启动的本地终端生效。
只写一个 shell 时和默认一样按登录 shell 启动,带参数或不是 shell 的照写执行。
Windows 的默认 shell 原来是 cmd.exe,现在先用 PowerShell 7,其次 Windows PowerShell,
都没有才用 cmd.exe。
工作区改为每次打开、重启本地终端时向 LocalTerminalTransportProvider 要 factory,
UI 测试注入的 FixedLocalTerminalTransportProvider 记下每次要的 shell。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 19:44:25 +08:00
Xuz and Claude Opus 5.5
9799f88ade
版本号改为 0.1.8
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
v0.1.8
2026-10-10 23:22:26 +08:00
Xuz and Claude Opus 5.5
dc5adddd06
启动后不久检查更新时,下好的新版本在重启时找不到
...
更新程序启动 30 秒后清理旧的暂存,原来会删掉所有 .ShellRS.app.update-*(Linux 是
.<AppImage>.update-*),包括启动后手动检查、切换渠道刚下载暂存好的新版本,于是「重启并
安装」报找不到文件,重试才从下载目录重新暂存。现在清理只删不比当前版本新的暂存,和下载
目录的规则一致。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 23:21:47 +08:00
Xuz and Claude Opus 5.5
db0a0faf05
发布流程:lipo -verify_arch 的参数顺序写反了,macOS 两个架构都在构建后失败
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
v0.1.8-beta.1
2026-10-10 22:49:57 +08:00
Xuz and Claude Opus 5.5
026e0d44d8
版本号改为 0.1.8-beta.1
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 22:34:46 +08:00
bigtan
e91bab0d09
macOS 按 Apple Silicon 和 Intel 分别发布安装包
...
发布流程改为按 aarch64、x86_64 构建矩阵,分别签名、公证并上传 DMG 和升级 ZIP,
不再合成 universal 应用。两个任务使用独立缓存和产物名称,发布时收集全部架构。
更新清单保留原有平台键,分别记录对应架构包的地址、大小和 SHA-256。
已有 universal 客户端按运行架构升级;Rosetta 下的 Intel 版仍接收 Intel 包。
同步更新中英文下载说明、发布文档和示例清单,增加双架构校验与错包拒绝断言。
验证:52 项更新模块测试通过,Clippy、格式、YAML 和 shell 语法检查通过。
2026-10-10 22:33:22 +08:00
Xuz and Claude Opus 5.5
5ca6e53366
设置 › 终端新增「终端交互」:选中复制、右键行为
...
「选中复制」打开后,鼠标选中的文字在松开时进入系统剪贴板,单击没选中东西时剪贴板不变;
默认关闭。「右键行为」可选无动作、粘贴、显示菜单,默认显示菜单;右键从不交给要求鼠标的
程序。设置存在 settings.json 的 terminal_interaction,终端经全局量 TerminalInteraction
读取,改动立即作用于已打开的终端。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 19:24:04 +08:00
Xuz and Claude Opus 5.5
0aa1d4452d
ESXi 等只在键盘交互式认证里收密码的主机,用保存的密码自动登录
...
ESXi 的 sshd 关了 password 方式,只开 publickey 和 keyboard-interactive。保存的密码只走
password 方式,于是测试连接报「服务器要求键盘交互式认证」,外部 CLI 和端口转发连不上,
在应用里每次连接都要手输。
现在「密码」登录遇到键盘交互式认证的第一个单独的隐藏问题,就用保存的密码(测试连接时是
对话框里填的)回答,同 WinSCP 默认的「用密码响应第一个提示」。一次登录里保存的密码只发
一次;密码之后的验证码等问题照样问人。被拒或没有密码时,不能询问的连接报缺的是密码,应用
里的询问写明保存的密码被拒。没有问题的一轮直接回空,不再弹框。外部 CLI 遇到密码以外的问题
不再让人「保存密码」。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 17:12:19 +08:00
Xuz and Claude Opus 5.5
5fdfce239a
版本号改为 0.1.7
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
v0.1.7
2026-10-10 15:18:22 +08:00
Xuz and Claude Opus 5.5
3a9e72eab3
版本号改为 0.1.7-beta.2
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
v0.1.7-beta.2
2026-10-10 13:47:24 +08:00
Xuz and Claude Opus 5.5
27822e7315
SFTP 文件列表点列名即可排序,换目录后列宽和排序箭头不再复位
...
gpui-kit 只给列标题右边的箭头挂了排序,标题本身的点击用来选列,而文件列表关掉了选列,
所以只能点箭头。现在点列名和点箭头一样:降序、升序、恢复按名称。
表格每次 refresh(每读一次目录)都从委托重新取列,原来拖宽的列会弹回默认宽度,箭头也回到
「未排序」而行仍按原列排着。现在 FileListing 记下拖动后的列宽(ColumnWidthsChanged)和
当前排序,refresh 后照旧。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 13:46:54 +08:00
Xuz and Claude Opus 5.5
e1600ce05c
SFTP 本地目录列表在 Windows 上列出各个驱动器
...
Windows 上每个盘是一个独立的根,目录列表原来只有当前路径的各级和主目录、桌面、文稿、下载,
离不开起始的盘(只能在「打开目录/书签」里手动输入 D:\)。现在「位置」里按 WinSCP 的样子
列出所有盘符:「C: 本地磁盘」「E: 可移动磁盘」「Z: 网络驱动器」「F: CD 驱动器」。
盘符用 GetLogicalDrives 和 GetDriveTypeW 取,不读卷标。位置改在后台随每次读本地目录
一起重新取,所以新插上的 U 盘刷新一下就出现,也不在 UI 线程上碰网络驱动器。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 13:46:54 +08:00
Xuz and Claude Opus 5.5
5be3f56b0c
版本号改为 0.1.7-beta.1
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
v0.1.7-beta.1
2026-10-10 11:52:19 +08:00
Xuz and Claude Opus 5.5
eadbe6481a
SFTP 只用 WinSCP 也用的请求:修复经堡垒机上传失败、编辑器保存时连接断开
...
用户的堡垒机对 fsetstat 回 Failure,收到 fsync@openssh.com (即使宣称支持)就断开整个会话,
所以上传报「Failure: Failure」(.filepart 已写完整),编辑器保存时 SFTP 连接断开。现在:
- 上传关闭文件后才按路径 setstat 设修改时间和权限,不再对打开的句柄 fsetstat;
- 不再发 fsync@openssh.com ;
- 覆盖已有文件也不用 posix-rename@openssh.com ,一律先把旧文件改名成备份、发布后再删
(不是原子的)。
测试服务器加了堡垒机模式(bastion_server):对 fsetstat 和所有扩展请求断开会话;新上传、
覆盖上传和编辑器保存都要在同一条连接上完成,并保留修改时间。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 11:51:51 +08:00
Xuz and Claude Opus 5.5
ecf9d92e47
README 加上 LINUX DO 徽章
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-09 21:33:45 +08:00
Xuz and Claude Opus 5.5
63d1e4281c
版本号改为 0.1.6
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
v0.1.6
2026-10-08 18:23:54 +08:00
Xuz and Claude Opus 5.5
b834477bf4
终端加上滚动条:翻看回滚历史时出现在右侧,可拖动、点轨道跳转
...
用 gpui-kit 的 Scrollbar,配一个按回滚行数换算像素的 ScrollbarHandle
(terminal/scrollbar.rs)。拖动的回调没有 context,经引擎给出的
Scrollback 直接滚动终端,再由滚动条通知视图重画。滚动条盖在整个边距上,
滑块大多落在文字旁边;全屏程序没有回滚,不显示。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-08 18:23:22 +08:00
Xuz and Claude Opus 5.5
65ea32acfb
终端执行的单元测试:dash 作为 sh 时允许输出里多一行 Terminated
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-08 16:44:07 +08:00
Xuz and Claude Opus 5.5
2df67bc639
版本号改为 0.1.6-beta.1
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
v0.1.6-beta.1
2026-10-08 16:16:42 +08:00
Xuz and Claude Opus 5.5
e09adeefb7
外部 CLI 新增 exec --terminal:在已打开的终端里执行命令
...
只允许登录一次的堡垒机(外部连接)上,exec 重新登录会被拒绝,另开通道又会结束会话。
--terminal 把命令打进这台主机在 ShellRS 里已打开的远程终端:先发 Ctrl-C,探测出
交互 shell(bash、dash、busybox ash)后输入命令行,经 OSC 标记取回输出、退出码和
执行上下文(--json 的 context)。不做忙碌检测,只拒绝全屏程序和同一终端已有一次运行。
外部连接上普通 exec 登录失败时,说明里提示改用 --terminal。
shells.yml 在 Docker 里对 bash 4.2–5.2、dash、busybox ash 跑真实终端测试。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-08 16:16:30 +08:00
Xuz and Claude Opus 5.5
3c937a9be2
README 去掉界面语言的说明
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-08 00:18:41 +08:00
Xuz and Claude Opus 5.5
2dd1f1995a
版本号改为 0.1.5
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
v0.1.5
2026-10-08 00:08:42 +08:00
Xuz and Claude Opus 5.5
51bdab74f4
README 默认英文:README.md 改为英文版,中文版移到 README.zh-CN.md
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-08 00:07:05 +08:00
Xuz and Claude Opus 5.5
4d70be98a9
分屏时右侧栏跟着焦点所在的远程终端,标题写出主机
...
中间区分屏后,焦点点进哪个标签它就在前,状态栏和右侧栏跟着变;点进另一半的 SFTP、
本地终端时右侧栏仍对着刚才的远程终端,屏幕上没有远程终端才隐藏。拖动合并标签组后
重新核对谁在前,修好标签被盖住后右侧栏还留着的问题。右侧栏标题加上主机名。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-07 23:59:06 +08:00
Xuz and Claude Opus 5.5
77da643999
中文 README 的截图按当前界面重截
...
标题栏的「临时连接…」、远程终端右侧的工具按钮、Docker 的下划线标签都已不同于旧图。
用演示数据在真实窗口里截取,与英文版的六张构图一致,服务器地址打码。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-07 23:29:26 +08:00
Xuz and Claude Opus 5.5
97addfbc00
英文 README 换成英文界面的截图
...
用改成英文名的演示数据在真实窗口里截取,与中文版的六张一一对应,
服务器地址打码;右侧栏工具拼图按中文版的版式拼。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-07 23:17:44 +08:00
Xuz and Claude Opus 5.5
7b0dad9b41
Docker 的标签改用可横向滚动的下划线标签,与系统服务一致
...
均分宽度放不下英文的 "Containers 12"。不管什么语言,标签都按文字和数量的宽度排,
放不下时横向滚动。去掉只给 Docker 用的 count_tabs 和分段控件的计数。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-07 22:42:23 +08:00
Xuz and Claude Opus 5.5
82c2c8b277
英文用户手册,README 说明界面有中英两种语言
...
docs/manual.en.md 按英文界面的用词翻译整本手册;README.en.md 改为链接英文手册。
两份 README 去掉「界面只有中文」的说明和路线图里的英文界面一项。
SFTP 标签菜单和地址提示里的 hostname 与其他处统一。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-07 22:30:25 +08:00
Xuz and Claude Opus 5.5
d4d079579a
守卫测试扫描整个 src,用词表补充常用词
...
所有模块都已接入多语言,不再按目录逐步登记;扫描器也认 #[cfg(all(test, …))]。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-07 22:18:07 +08:00
Xuz and Claude Opus 5.5
a0ed1ac8bf
SFTP 与编辑器的文案接入多语言
...
explorer/、sftp/、editor/ 的文案移进 locales/explorer.yml、sftp.yml、editor.yml,中文逐字不变。
文件列表的列名、目录列表的分组跟着界面语言重设;列表占位改存枚举,拖动预览存方向,
「位置」改存 Place,显示时再翻译。动词拼句的地方(上传 / 下载、编辑器 / 预览、服务器上的 /
本机上的)拆成每种情况一个整句;废纸篓在 Windows 上写 Recycle Bin。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-07 22:12:51 +08:00
Xuz and Claude Opus 5.5
eb6e43045a
英文用词统一:清屏、复制主机名
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-07 22:11:58 +08:00