Skip to content

Releases: CZF39631/AutoScript_Hub

v1.2.5

Choose a tag to compare

@github-actions github-actions released this 23 Sep 08:42

v1.2.5:脚本浏览器选择与市场删除

本版本提供脚本参数浏览器选择、管理员市场删除及本机端口独占修复。发布状态以官方 Release 为准;不移动或替换已公开的 v1.2.4 Tag 与资产。

变更范围

脚本参数选择浏览器

  • 在脚本参数表单查询当前本机客户端检测到的已安装浏览器,选择后向脚本传入可执行文件路径;不修改系统默认配置。
  • 使用向后兼容的静态参数定义:type: "text" 配合 widget: "browser"。不在 config() 中运行检测逻辑,也不新增旧客户端不能解析的参数类型。
  • 默认空值由脚本回退到平台默认配置;保留手动输入、历史参数及预设,支持检测失败重试与离线提示。
  • 旧客户端忽略展示元数据,继续显示文本输入并解析脚本依赖;只有新客户端具备动态选择界面。
  • 浏览器检测只说明存在安装,不保证可启动或兼容脚本。脚本需要适配参数定义,客户端升级不会擅自改写市场脚本。

管理员删除市场脚本

  • 在脚本管理页提供独立于个人卸载的市场删除操作;仅管理员可用,要求输入脚本名称确认。
  • 服务端软删除,保留历史运行、工单、脚本版本和相关文件,不进行物理清理。
  • 有等待中或执行中的任务时拒绝删除;不自动取消或终止任务。
  • 删除与新建在线执行需串行化,避免删除检查后又插入新的等待任务。
  • 删除后市场和管理列表不可见,不允许新的安装、下载或在线执行。
  • 已下载文件不远程擦除,离线客户端的授权变化仍遵循既有同步与快照有效期机制;不声称离线立即撤权。

参数表单与删除交互

  • 参数标签与控件左右对齐,说明收进问号,支持悬停与键盘聚焦查看。
  • 浏览器手动输入入口与选择框同行,不再常驻显示冗长路径和说明。
  • 浏览器列表固定向下展开,按可用空间限制高度并支持内部滚动,避免检测结果加载后反复翻到上方。
  • 删除确认框中的脚本名可以选中复制,不额外增加提示或按钮。
  • 后续纯 UI 调整优先更新前端资源,不要求重新安装客户端;本次客户端更新包含独占监听等原生功能修复。

本机端口独占修复

  • review.1 冻结验收发现 Windows 允许旧 HTTPServer 的 SO_REUSEADDR 造成多个 Agent 同时监听一个端口;仅确认某个 PID 拥有监听不足以确认请求归属。
  • Agent 与桌面 UI 改用独占监听,Windows 设置 SO_EXCLUSIVEADDRUSE,禁止地址与端口复用。占用时保留既有备用端口行为,不抢占其他进程。
  • 使用临时随机端口验证新/旧服务互相不能共用监听;针对性回归 17 项通过。修复后以 review.2 重新完整构建及验收,不替换 review.1 证据。

不包含

  • 不合并此前误做的系统设置浏览器选择分支。
  • 不引入 1.3.0 Preview 的调度、机器人或本机闹钟功能。
  • 不自动删除任何真实市场脚本,不迁移或覆盖 Preview 安装与数据。

发布门槛

  • 契约、独立 Skill、旧客户端回退及权限/生命周期针对性测试:47 项契约/Skill 测试、54 项后端测试通过;另以 1.2.4 原契约验证文本回退与依赖解析。
  • 隔离源代码快照中的完整 Python 测试:review.2 为 460 项通过;主工作区未运行 pytest。
  • 前端 35 项测试、lint、构建通过;隔离浏览器验证参数选择/清空传参、不写全局设置、精确名称确认、409 保护、成功刷新和开发者无删除入口。1440/800 像素截图验收通过,无页面脚本错误。
  • 从 fefe695e45914cab8bf42e6fb7819f3381a53044 构建 review.2,283 个源码文件构建前后哈希一致。冻结 Agent 独占备用端口、鉴权、浏览器参数元数据、真实参数回显执行及私有 Python 3.11.9 均通过,排空退出码 0;本次验收进程无残留。未运行安装器或覆盖正式安装。

review.2 安装包为 32,803,091 字节,SHA-256:bcb67104d6bc1a4e6c80d49d41652a211dbbe5cb7af48c64ea298c0bfa20921c。首次下载超时和长路径失败证据已保留;最终使用校验缓存及短隔离目录,通过原版微软签名检查与完整构建门禁。桌面端后续交互修复另经 800/1440 宽度隔离验收;下拉菜单在异步检测前后及多次展开时均保持向下,参数传值与删除保护未回退。

  • 合并发布提交并通过主分支 CI,发布不可变 v1.2.5 Tag。
  • 校验 GitHub/Gitee 资产、签名清单、SHA-256、匿名下载及双架构镜像。
  • 服务端如需升级,使用既有升级流程完成备份及健康验证;不猜测连接配置。

v1.2.4

Choose a tag to compare

@github-actions github-actions released this 10 Sep 07:54

AutoScript Hub 1.2.4

本版本基于用户已验收的 1.2.4-review.2,发布为 Stable 正式版。

执行与环境

  • 在线任务使用创建时锁定的脚本版本,避免排队期间发布新版导致记录与实际执行不一致。
  • 离线历史取得后端 ID 后立即保存,领取、日志或状态回写中断时复用同一记录;日志失败仍尝试回写终态,避免长期占用执行名额。
  • 本地和在线执行共用启动互斥;每个子进程使用独立参数文件,启动失败时清理临时文件。
  • 修复自定义环境变量的反序列化顺序,恢复环境创建、更新、列表、详情与默认环境接口。

工单与更新恢复

  • 异常历史参数显示提示和原始文本,不再造成页面白屏。
  • 快速切换或关闭工单时忽略旧日志响应,防止显示另一张工单的日志。
  • 工单长文本、路径及解决说明在弹窗内换行,标签保持可读。
  • 更新器验证启动阶段保留进程归属;异常退出后解除陈旧状态锁定,不干扰仍在运行的更新器。

安装与连接兼容

  • 覆盖安装检测目标目录的旧客户端和 Agent,并明确询问是否关闭,默认选择“否”。
  • 先停止客户端守护,再停止 Agent 及其脚本子进程;确认退出后才替换文件,失败时阻止继续复制。
  • 不再按进程名全局结束 Agent;静默安装遇到旧进程时需要显式允许关闭应用。
  • UI 和 Agent 默认端口冲突时使用备用端口,前端支持发现 Agent。
  • Agent 意外退出后客户端尝试重启并恢复连接。
  • 托管 Python 环境默认使用清华 PyPI 镜像。

升级说明

  • 本轮含客户端和服务端修改;环境接口修复需要服务端升级到 1.2.4。
  • 安装前保存工作并停止业务任务;同意关闭应用会中断 Agent 下的脚本子进程。
  • 继续采用签名更新清单、文件长度及 SHA-256 校验。GitHub 是安装包真源,Gitee 镜像代码、部署包、Skill、签名清单及校验资产。
  • 不包含后续规划中的诊断包、统一脱敏、定时调度、编辑器、AI 或沙箱。

验收依据

  • Review 2 用户验收已确认。
  • 预览构建通过 Python 412 项与前端 26 项测试,安装器共享关闭代码实际编译及只读进程识别通过。
  • 本机隔离覆盖测试曾因临时合成 EXE 启动被拒绝而受阻;用户验收不等同于该自动化测试通过。正式发布仍由 CI 重跑测试、安装冒烟及双架构镜像验证。

v1.2.3

Choose a tag to compare

@github-actions github-actions released this 04 Sep 12:27

AutoScript Hub 1.2.3

客户端更新

  • 版本检查优先访问当前服务器缓存并回退 Gitee,不访问 GitHub API。
  • GitHub 完整安装包保留为已签名清单中的公开下载兜底。
  • 点击下载安装后由 Agent 后台执行下载、续传、校验和合并,本地服务在下载期间保持响应。
  • 修复检查完成且暂无更新时,页面刷新后重新显示“尚未检查”的问题。
  • 支持 review 本地版本参与更新比较,可在正式发布前完整验证更新链路。
  • 下载验证完成后继续由独立 AutoScriptUpdater.exe 静默安装、重启和回滚。

服务器更新缓存

  • 服务端可在启动后立即、随后按默认每 6 小时检查 GitHub Release。
  • 分别验签和缓存 Stable/Beta Windows 安装包,完整校验大小与 SHA-256 后原子发布。
  • 管理员 API 可启停缓存并配置服务器出站代理、GitHub 仓库和检查周期。
  • 客户端优先从所连接服务器下载缓存安装包,缓存缺失或旧服务器不支持时自动回退公开源。
  • 新版本停止生成 Gitee 安装包分卷;Gitee 只镜像签名清单,完整安装包由 GitHub 托管。

界面与构建

  • 应用 Air Hub 图标,统一网页 Favicon、登录页、侧边栏、Windows 程序、更新器、安装器和快捷方式。
  • 修复完整构建测试可能向开发电脑发送模拟脚本失败通知的问题。

服务端配置

服务端自动缓存默认关闭。升级后管理员可调用 PUT /api/settings/server-update 启用;具体请求格式见 docs/0.9-deployment-runbook.md。

v1.2.3-beta.2

v1.2.3-beta.2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 04 Sep 06:47

AutoScript Hub 1.2.3-beta.2

这是供 Beta 更新通道验证的预发布版本,不会推送给 Stable 通道。

修复

  • 更新检查完成且暂无可用更新时,持久化检查到的最新版本;页面刷新或状态轮询后不再错误显示“尚未检查”。
  • 支持 1.2.2-review.1、1.2.3-beta.2-review.1 等仅用于本地预览的 Review 版本参与更新比较,无需创建线上 Tag 或 Release。
  • 客户端测试统一屏蔽真实桌面通知,并使用带有效 PID 的模拟进程,避免本地构建期间弹出模拟脚本失败通知。

继承自 Beta.1

  • 版本检查仅访问 Gitee Release,GitHub 完整安装包仅作为下载兜底。
  • Agent 后台异步下载、续传、校验和合并更新包,本地服务在下载期间保持响应。
  • 下载完成后由独立 AutoScriptUpdater.exe 静默安装、重启和回滚。

验证重点

  1. 从 1.2.3-beta.1 检查并升级到 1.2.3-beta.2。
  2. 升级期间客户端保持在线,页面持续刷新下载状态。
  3. 在 Stable 通道检查后显示最新 Stable 版本和“当前已是最新版本”,刷新页面后状态不丢失。
  4. 操作审计页面正常加载。

v1.2.3-beta.1

v1.2.3-beta.1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 04 Sep 05:02

AutoScript Hub 1.2.3-beta.1

这是供 Beta 更新通道验证的预览版本,不会推送给 Stable 通道。

更新流程改进

  • 版本检查仅访问 Gitee Release,避免 GitHub API 在国内网络不可达时拖慢检查或产生误导错误。
  • GitHub 完整安装包仍作为下载阶段的最终兜底,但不参与版本检查。
  • 点击“下载并安装”后,Agent 在独立后台线程中执行下载、续传、校验和分卷合并,本地接口立即返回。
  • Agent 本地服务支持并发请求,更新下载期间继续响应连接状态及其他本地接口。
  • 设置页面每秒刷新下载状态,不再把繁忙的 Agent 误判为非 Windows 客户端。
  • 下载完成后仍由独立 AutoScriptUpdater.exe 执行静默安装、自动重启和启动失败回滚。

验证重点

  1. 检查更新是否能在数秒内完成。
  2. 点击下载安装后页面是否持续显示“正在后台下载并验证更新”。
  3. 下载期间客户端其他页面是否仍可正常使用。
  4. 下载完成后客户端是否自动静默安装并重启。
  5. 重启后已安装版本是否显示为 1.2.3-beta.1。

只有预览验证通过并获得明确确认后,才会发布后续正式版本。

v1.2.2

Choose a tag to compare

@github-actions github-actions released this 04 Sep 03:37

AutoScript Hub 1.2.2

本版本重点解决客户端冷更新可靠性,并修复操作审计列表为空的问题。

客户端更新

  • 检查更新与下载安装彻底分离,仅在用户确认后下载大文件。
  • 持久化保存已验证的签名清单,刷新或重启客户端后无需重复检查同一版本。
  • 更新源暂时不可用时保留已发现版本,后台检查仍可替换为更高版本。
  • 检查更新不再沿用本地 API 的 10 秒超时。
  • Gitee 提供 2 MiB 安装包分卷,客户端支持流式下载、有限重试、安全断点续传和逐卷 SHA-256 校验。
  • 分卷合并后再次校验完整安装包长度及 SHA-256,失败时自动回退 GitHub 完整安装包。
  • 发布流程会在公开后匿名下载所有 Gitee 分卷,重建并校验完整安装包。
  • 安装继续采用独立更新器静默执行,并保留启动失败自动回滚。

操作审计

  • 修复审计接口响应模型错误导致数据库存在记录但接口返回 500、页面显示为空的问题。
  • 审计日志加载失败时会显示明确错误提示。

其他修复

  • 修复 Windows 维护电脑发起远程服务器升级时的 Shell 换行与标准输入兼容问题。

后续计划

热更新架构已记录至 docs/TODO.md,本版本不引入热更新,优先保证冷更新链路稳定。

v1.2.1-beta.2

v1.2.1-beta.2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 04 Sep 02:42

AutoScript Hub 1.2.1-beta.2

这是供 Beta 更新通道使用的预览版本。

修复与改进

  • 发现新版本后持久化保存已验证的签名更新清单,刷新页面或重启客户端后无需重复检查即可继续下载安装。
  • 更新源暂时超时或不可用时,不再清除已经发现的新版本。
  • 一个更新源失败但备用源检查成功时,不再显示误导性的 SSL 或网络错误。
  • 后台周期检查仍会发现并替换为更高版本。
  • 修复客户端检查更新沿用本地 API 10 秒超时,网络较慢时误报 timeout of 10000ms exceeded 的问题。
  • 包含 Windows 维护电脑发起远程服务器升级时的兼容修复。

更新方式

在客户端系统设置中将更新通道切换为 Beta(测试版及稳定版),保存并等待客户端同步设置后,再点击“检查更新”。

本预览版不会推送给 Stable 更新通道。

v1.2.1-beta.1

v1.2.1-beta.1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 03 Sep 13:43

AutoScript Hub 1.2.1-beta.1

这是供 Beta 更新通道使用的预览版本。

修复内容

  • 修复客户端检查更新沿用本地 API 10 秒超时,网络较慢时误报 timeout of 10000ms exceeded 的问题。
  • 下载安装不再受前端请求超时限制,仍由 Agent 的网络超时、签名验证、文件长度和 SHA-256 校验保障安全。
  • 包含 Windows 维护电脑发起远程服务器升级时的 Shell 换行与标准输入兼容修复。

更新方式

在客户端系统设置中将更新通道切换为 Beta(测试版及稳定版),保存并等待客户端同步设置后,再点击“检查更新”。

本预览版不会推送给 Stable 更新通道。

v1.2.0

Choose a tag to compare

@github-actions github-actions released this 03 Sep 12:36

AutoScript Hub 1.2.0

本版本重点完善团队权限隔离、执行结果提醒和客户端更新体验。

主要更新

  • 增加人员分组,用户和脚本均可归属多个分组。
  • 脚本市场、详情、下载、安装、执行、历史、日志、工单和 Dashboard 均由服务端强制实施分组权限。
  • 升级时自动建立默认分组,保持已有用户和脚本的可见性。
  • 增加脚本执行成功、失败、取消以及执行前失败的 Windows 桌面通知。
  • 增加内置更新说明页面和重要更新首次运行提醒,可在本机默认隐藏。
  • 客户端默认优先从 Gitee 获取签名更新清单,失败时自动回退 GitHub;安装包继续验证 Ed25519 签名、文件长度和 SHA-256。
  • 修复用户管理表格分组文字纵向换行、操作列拥挤,以及旧服务器下基础用户编辑被整体禁用的问题。

服务端升级

本版本包含数据库迁移 0004_grouped_marketplace。请先备份数据,再升级服务端;就绪检查中的 database、data_dir 和 migration 必须全部为 ok。

推荐使用仓库内置的一键远程升级流程:

python ops/server/remote_upgrade.py --version 1.2.0

详细说明见 docs/0.9-deployment-runbook.md。

v1.1.0

Choose a tag to compare

@github-actions github-actions released this 31 Aug 05:28

更新内容

  • 增加可配置的外部认证支持,可通过 http_form 或 http_json 对接现有认证系统;默认关闭,不影响原有登录方式。
  • Windows 客户端增加“记住账号密码”,密码使用当前 Windows 用户的 DPAPI 加密保存,不再写入明文配置。
  • 完善用户管理:支持用户名/显示名搜索、修改显示名、调整权限等级、启用或禁用用户,以及软删除用户。
  • 增加自删、自禁用、自降权和最后一个有效管理员保护。
  • 外部认证用户首次登录后由本地管理员管理权限,后续登录不会覆盖本地角色。
  • 修复预发布版本的更新渠道识别。

发布资产

  • AutoScript-Hub-Setup-1.1.0.exe:Windows 安装程序
  • autoscript-hub-server-deploy-1.1.0.zip:服务端部署包
  • autoscript-script-authoring-1.1.0.zip:脚本开发包
  • SHA256SUMS.txt:发布资产校验值

服务端镜像:ghcr.io/czf39631/autoscript-hub-server:1.1.0