OpsXShell Dev
|
3f636b1b0e
|
feat(keybindings): 快捷键自定义系统 — store+冲突检测+交互式重新绑定UI | 13 files +1032/-137 | 72 tests passing tsc零错误
|
2026-04-24 05:11:49 +08:00 |
|
Logan.Li
|
514d62644e
|
v2.0.0: 主题系统+SSH私钥解析修复+会话持久化+连接池优化+UI打磨
核心修复:
- ssh-service.ts: 新增 resolvePrivateKey(),将私钥文件路径(~/.ssh/id_rsa)解析为内容后传给 ssh2,
解决 'Cannot parse privateKey: Unsupported key format' 错误
- useTerminalConnection.ts + sessionHelper.ts: 根据 authType 过滤字段,password/agent 认证不再传 privateKey
- sessionStore.ts: addSession() 现在先调用 sessionCreate() 持久化到 SQLite,解决恢复标签'无可用连接信息'问题
- database-service.ts: updateSession() 补充 private_key_path 字段持久化
- SessionDialog.tsx: 默认 username='root'、privateKey='~/.ssh/id_rsa'
UI/UX:
- 语义化主题系统(app-theme.ts),强制深色模式,全局无边框设计
- macOS 标题栏支持双击最大化(window:toggleMaximize IPC)
- macOS 菜单栏('OpsXShell' 应用菜单 + Settings Cmd+,)
- WelcomeView 4卡片布局,移除 Settings 按钮
- TabBar/TabItem 背景色统一(bg-dark-800/900),消除白色边框线
架构优化:
- SFTP 生命周期修复(useSFTP.ts useRef + autoConnectAttempted guard)
- 连接池竞态修复,支持快速多标签连接
- IPC 接口规范化,安全错误处理
- Vite 代码分割优化
质量: lint零错误 | tsc零错误 | build成功 | 49 tests pass
|
2026-04-22 11:15:41 +08:00 |
|
OpsXShell Dev
|
37e65be823
|
docs: ROADMAP v1.3.0 标记完成 + v1.4.0 规划更新
|
2026-04-18 20:24:56 +08:00 |
|
OpsXShell Dev
|
924a02b9cc
|
v1.3.0: UI打磨 — 全局动画(slideIn/scaleIn/shimmer) + 面板入场动画 + 微交互 + 视觉一致性 | 10 files +112/-24 | tsc零错误 构建成功
|
2026-04-18 20:21:03 +08:00 |
|
OpsXShell Dev
|
1f2de032a4
|
v1.3.0: 主题系统+代码分割+设置重构+命令片段库+命令面板+连接面板 | 19 files +2141/-257 | tsc零错误 构建成功
|
2026-04-18 19:25:45 +08:00 |
|
OpsXShell Dev
|
caba5f4c0d
|
feat(v1.2): 体验升级 — 快捷键系统 + 标签拖拽 + SFTP拖拽上传 + 组件拆分 + 响应式
任务1: 全局快捷键管理器 — useKeyboardShortcuts hook
Ctrl+Tab/Shift+Tab标签切换, Ctrl+1~9跳转, F11全屏, Ctrl+Shift+N新建标签
任务2: 标签拖拽排序 — tabStore.moveTab + TabBar HTML5 DnD
不可变更新, 拖拽视觉反馈(opacity+指示线), 活跃标签底部accent-blue指示线
任务3: SFTP拖拽上传 + useSFTP调试清理
FileListPanel拖拽覆盖层(Upload图标+虚线边框), 5个调试函数→createLogger,
disconnect()正确调用IPC, 删除mock data
任务4: SFTP右键菜单完善 — 重命名/复制路径/属性/权限
FilePropertiesDialog+ChmodDialog, sftpStat/sftpChmod IPC全栈实现
任务5-6: 侧边栏分组折叠动画 + 宽度可拖拽调整
Grid 0fr→1fr折叠动画, ChevronRight旋转, resize handle 180~400px, settings记忆
任务7: 响应式布局 + 视觉优化V1~V5
useMediaQuery hook, <800px侧边栏overlay模式, SFTP垂直堆叠, WelcomeView响应式grid
任务8: Loading/Skeleton骨架屏
Skeleton/SkeletonLine/SkeletonCircle/SkeletonBlock + FileListSkeleton/SessionTreeSkeleton/TabContentSkeleton
任务9: 空状态设计
EmptyState通用组件, SessionTree/FileListPanel/WelcomeView/SFTPView空状态引导
任务10: TerminalView组件拆分重构 711行→285行
useTerminalConnection(300行) + useTerminalSearch(123行)
+ TerminalOverlay(98行) + TerminalSearchBar(74行)
33 files changed, 2682 insertions(+), 872 deletions(-)
|
2026-04-18 18:35:49 +08:00 |
|
OpsXShell Dev
|
d344900118
|
feat(v1.1): Toast通知系统 + 自定义对话框 + 终端搜索 + SFTP真实实现 + 标签持久化
任务7: Toast通知系统 — ToastProvider+4类型(success/error/warning/info)+右上角堆叠动画
任务8: 替换alert/confirm/prompt — ConfirmDialog+PromptDialog+useToast替换7处原生对话框
任务9: 终端搜索 — xterm SearchAddon Ctrl+F搜索栏(上一个/下一个/关闭)
任务10: SFTP上传/删除 — useSFTP.ts upload/delete方法实现
任务11: 会话恢复 — tabStore持久化到localStorage,启动恢复tabs
14 files changed, 1218 insertions(+), 241 deletions(-)
|
2026-04-18 16:21:10 +08:00 |
|
OpsXShell Dev
|
53274e2291
|
v1.1.0: better-sqlite3→sql.js迁移 + 6项UI/代码修复
迁移:
- better-sqlite3(原生C++) → sql.js(WASM纯JS), 兼容Node 24
- database-service.ts: PreparedStatement包装器保持API兼容
- main.ts: initialize()改为async/await
- 移除@electron/rebuild和@types/better-sqlite3依赖
- 新增.npmrc阿里云镜像加速
UI/代码修复(任务1-6):
1. TerminalView: 清理111行调试日志(645→534行)
2. 设计系统: cyan/slate→accent-blue/dark-*颜色统一(FileRow/TransferItem/Breadcrumb/ContextMenu)
3. StatusBar: 重写接入实时连接状态,三区布局
4. SessionDialog: 私钥浏览按钮添加onClick处理
5. WelcomeView: 真实session数据替换硬编码假数据
6. SFTPView: emoji→Lucide图标(FolderOpen/Upload/Download/Trash2)
构建验证: tsc零错误 + vite build成功(Node 24.14.0)
|
2026-04-18 15:40:19 +08:00 |
|
OpsXShell Dev
|
c5243df040
|
docs: UI/UX深度审计 — 视觉设计+功能交互全面评估
- PROJECT_EVALUATION.md: 新增UI/UX审计评分(48/100)
- 视觉设计65分(配色专业但系统执行不严格)
- 交互体验40分(alert/prompt泛滥,无Toast)
- 功能便捷性45分(快捷键仅4个,无终端搜索)
- 状态处理35分(多组件缺三态)
- 响应式10分(完全缺失)
- 12项Critical问题 + 8项Warning问题
- 功能完成度矩阵 + 竞品对标
- 3阶段优化路线(48→88分)
- ROADMAP.md: 基于UI/UX审计重写路线图
- v1.1.0 基础可用(2周): Toast+终端搜索+会话恢复+SFTP修复
- v1.2.0 体验升级(2周): 快捷键+拖拽+响应式+视觉打磨
- v1.3.0 测试覆盖(2周): 核心模块50%覆盖率
- v1.4.0 专业功能(2周): 分屏+i18n+自定义快捷键
- v1.5.0 安全升级(1周): Electron升级+IPC加密
|
2026-04-18 13:23:04 +08:00 |
|
OpsXShell Dev
|
60c3d868c5
|
docs: v1.0.0 独立代码审计 - 重新评估(58/100) + 制定v1.1~v1.5优化路线图 + TDD计划
|
2026-04-18 10:20:31 +08:00 |
|
Logan.Li
|
c4bf43f58f
|
docs: 更新项目文档到 v0.3.0 最新进度
README.md: 更新功能特性,标记核心功能完成
ROADMAP.md: 添加 v0.10.0 版本,更新 v1.0.0 状态
PROJECT_EVALUATION.md: 添加 v0.10.0 评估 (95/100)
|
2026-04-06 01:23:41 +08:00 |
|
Logan.Li
|
484d850abd
|
feat: v0.3.0 版本 - SSH终端、SFTP、端口转发功能实现
核心功能:
- SSH终端: 密码/密钥认证、XTerm.js终端、多主题配色、IP高亮
- SFTP管理: 双栏文件管理、上传下载、传输队列
- 端口转发: 本地/远程转发、SOCKS5动态代理、规则管理
架构改进:
- 拆分大型组件 (SFTPView/TabBar/Sidebar)
- 添加统一日志和错误处理
- 修复React严格模式下的终端黑屏问题
UI更新:
- 新增端口转发视图
- 更新UI预览文档
- 左侧栏右键菜单支持SFTP快捷打开
|
2026-04-06 01:20:47 +08:00 |
|
Administrator
|
cf1c054381
|
Initial commit
|
2026-04-04 14:01:18 +00:00 |
|