1. OpsFlash v0.4.1 版本发布情况
OpsFlash v0.4.1 版本发布,此次发布包含了修复和新增两方面的内容。
2. 修复内容
修复了多个问题,包括 SSH 非交互指令执行后不结束的问题,原因是命令衍生的后台进程持有 PTY 时 sshd 不发 EOF,`Wait()` 永久阻塞导致一直显示「运行中」,现在结束判定改为「Wait 返回 或 输出静默 10s」;SSH 流式收尾死锁问题,`x/crypto/ssh` 不关闭 stdout writer 导致读取协程永久阻塞、会话无法结束,现在关闭会话时显式关闭输出管道;SSH 交互式 / 守护进程类型指令启动报「CMD 命令不支持整体多行脚本」的问题,该校验改为仅本地 terminal 模式生效;交互式会话停止后读取协程残留的问题,随输出管道关闭一并修复。
3. 新增内容
新增了 SSH 远程守护进程(后台类型指令),采用 `nohup` 远程启动 + `kill -0` 查活 + `kill` 停止的方式,支持 SSH 连接的守护进程类型指令。
4. OpsFlash 简介
OpsFlash 是轻量级运维极速引擎 (The Flash Engine for Micro - Ops),是一款基于 Wails v3 + Go + Vue 3 的跨平台桌面运维工具。单二进制分发,本地 SQLite 存储,敏感凭据加密保护,让日常服务器运维轻快如一瞬闪电。其仓库地址包括 GitHub 和 Gitee。
5. 特性
具有用户与认证特性,包括登录 / 登出,Token 会话(24h 过期),密码 bcrypt 哈希,用户管理(创建 / 修改 / 删除 / 角色);连接管理特性,SSH / Redis / MySQL / TDengine 连接统一管理,密码、私钥、口令凭据本地加密存储,连接测试(含往返延迟);SSH 隧道特性,支持 local / remote / dynamic 三种端口转发,一键启停、断线自动重连、应用启动自启、分组与批量创建;指令库特性,命令统一管理(环境分组、terminal / SSH / Redis / MySQL / TDengine 五种执行位置、cmd / PowerShell / Bash 脚本解释器),非交互 / 交互终端 / 守护进程三种命令类型,ConPTY 实时输出、流式执行可停止;数据库执行特性,Redis 指令(go - redis)、MySQL / TDengine SQL(taosAdapter REST 免 CGO)一键执行,查询结果以结构化表格展示在终端面板;脚本库特性,bat / ps1 / sh 脚本统一管理(环境分组、在线编辑、重命名、一键执行),ConPTY 实时输出、多会话并行、可停止,Windows 走 WSL bash / Git Bash(自动探测路径挂载);桌面体验特性,有系统托盘(关闭最小化)、每日日志文件。
6. 技术栈
其技术栈包括桌面框架使用 Wails v3 (v3.0.0 - beta.4),后端语言为 Go 1.25,前端是 Vue 3 + TypeScript + Vite 8,SSH 使用 golang.org/x/crypto/ssh (纯 Go,无 CGO),存储采用 SQLite (modernc.org/sqlite,纯 Go 驱动)。
7. 快速开始
环境要求包括 Go 1.25 +、Node.js 20 +(前端构建)以及 [Wails3 CLI]。开发模式使用 `wails3 dev` 可热重载前端与后端改动。构建产物使用 `wails3 build` 生成生产可执行文件到 bin/ 目录,构建后端为服务模式(无 GUI,纯 HTTP)可使用 `task build:server # 或 task run:server`。首次启动内置管理员账号:admin / 123456(登录后请尽快修改)。
8. 项目结构
项目结构包括 main.go 作为应用入口(窗口、托盘、菜单、事件);server/ 为 Go 后端,包含 authservice.go(登录/会话)、userservice.go(用户管理)、connections.go(SSH 连接管理)、tunnelservice.go(SSH 隧道)、opsruntime.go(命令执行运行时(PTY/会话))、exec/(执行器:ssh / mysql / redis / taos / terminal)、pty/(PTY 抽象(Windows ConPTY / Unix))、daemon/(守护进程)、secret/(凭据加密(DPAPI / AES - 256 - GCM))、tunnel/(隧道实现);frontend/ 为 Vue 3 前端,包含 src/components/pages/(页面:登录/首页/连接/隧道/命令/参数/用户);docs/ 为设计文档与数据库结构;build/ 为平台打包配置。
9. 软件截图
展示了连接管理和隧道管理的软件截图。
10. 开源协议与反馈贡献
本项目基于 MIT 协议开源,使用、修改、商用、分发均需保留版权声明。欢迎提 Issue / PR,安全漏洞请私信或邮件至维护者,勿直接公开。