Files

2.8 KiB
Raw Permalink Blame History

OpsXShell 当前任务

最后更新:2026-09-14
给 Hermes / OpenClaw / Cursor 持续开发用。做完一项就勾选,并同步 ROADMAP.md。规则见 AGENTS.md。

本周期已完成(勿回退)

  • 本地/远程转发:端口优先 + 高级绑定;远程默认 127.0.0.1;0.0.0.0 提示 GatewayPorts
  • 转发 retain / orphan-adopt / forwardIntent;空闲挂起断开原生并 retain Listener
  • SSH resume 返回新 connectionId 并回写所有相关 tab
  • RDP 协商 K64;缩放后清脏矩形并 clamp;解压失败重置 FastPath 而非整会话退出
  • AGENTS.md / CLAUDE.md 对齐当前架构与命令
  • macOS arm64 v2.1.1 安装包走 Tauri DMG 布局;本机 Developer ID 签名(公证/staple 仍要每打一次包跑一遍)
  • 删除过时 docs/ux-foundation-audit.md

现在可做

按影响排序。一次只取一项,改完跑 npm run test:patrol,相关能力再补单测。

  • keepalive / 原生 disconnect 保留真实断开原因,不要一律「closed by user」
  • 共享连接上 SFTP 在连接关闭后,活跃 tab 走与终端类似的有限次自动重连(恢复上次远程目录)
  • 远程文本保存前 sftpStat:mtime/size 变化则确认,避免静默覆盖
  • 同名目录冲突文案区分「合并覆盖内部同名文件」与「跳过」
  • 远程 0.0.0.0 启动后,列表 bindHost 尽量反映真实监听(未开 GatewayPorts 时常仍是 loopback),不要假装全接口已开
  • Windows x86_64 实机:./scripts/build.sh 产物 + ssh:// 注册 + 单实例唤起
  • 把当前已签名的 v2.1.1 DMG 公证并 staple(./scripts/macos-notarize.sh),未钉票不得对外写「已公证」
  • 无签名凭据时文档/界面不得宣称已签名、公证或自动更新(做法见 docs/release.md)

稍后

  • Agent Forwarding / OpenSSH 证书 / FIDO2(高级配置默认收起)
  • SFTP 校验和与失败任务恢复
  • RDP/VNC 生产级证书校验
  • Windows Authenticode(有证书后再做,见 release.md);macOS 每次新 DMG 仍须公证 staple
  • 自动更新(签名清单 + HTTPS + 回滚;缺一不可开 UI)
  • EventSink / specta / infrastructure 端口(单独轨道,见 docs/architecture-refactor.md)
  • 用户可导出的脱敏崩溃诊断包
  • AI 执行运行时从 React 面板抽离(取消、单步超时、原生 tool calling)
  • 主机排障 Agent eval 集

约束

  • 不引入审计/审批/堡垒机。
  • 未由 Rust 实现的能力不能在界面显示为可用。
  • 可见字符串同步七语种;test/i18n/localeKeys.test.ts 必须过。
  • 转发运行态不落盘;停止必须关掉真实 Listener。