diff --git a/README.md b/README.md index 2a364e0..cedccf4 100644 --- a/README.md +++ b/README.md @@ -6,20 +6,20 @@ - [ESP32 固件索引](device/README.md) - [服务端源码](https://git.eehut.com/liuchuansen/agentmate_service) -## 最新服务端:v0.3.3 +## 最新服务端:v0.5.0 -发布日期:2026-10-11。修复 Codex resume 状态恢复,以及不同设备先后使用同一串口时的发现与安全移除问题。 +发布日期:2026-10-11。增加面板密码登录、局域网外部访问、网页重启与四页监视面板,支持本机服务检查与升级。 | 平台 | 架构 | 下载 | | --- | --- | --- | -| macOS | arm64(Apple Silicon) | [agentmate-v0.3.3-darwin-arm64.tar.gz](https://git.eehut.com/agentmate/agentmate_release/raw/branch/main/service/v0.3.3/agentmate-v0.3.3-darwin-arm64.tar.gz) | -| macOS | amd64(Intel) | [agentmate-v0.3.3-darwin-amd64.tar.gz](https://git.eehut.com/agentmate/agentmate_release/raw/branch/main/service/v0.3.3/agentmate-v0.3.3-darwin-amd64.tar.gz) | -| Linux | amd64(x86_64) | [agentmate-v0.3.3-linux-amd64.tar.gz](https://git.eehut.com/agentmate/agentmate_release/raw/branch/main/service/v0.3.3/agentmate-v0.3.3-linux-amd64.tar.gz) | -| Linux | arm64(aarch64) | [agentmate-v0.3.3-linux-arm64.tar.gz](https://git.eehut.com/agentmate/agentmate_release/raw/branch/main/service/v0.3.3/agentmate-v0.3.3-linux-arm64.tar.gz) | -| Windows | amd64(x64) | [agentmate-v0.3.3-windows-amd64.zip](https://git.eehut.com/agentmate/agentmate_release/raw/branch/main/service/v0.3.3/agentmate-v0.3.3-windows-amd64.zip) | -| Windows | arm64(ARM64) | [agentmate-v0.3.3-windows-arm64.zip](https://git.eehut.com/agentmate/agentmate_release/raw/branch/main/service/v0.3.3/agentmate-v0.3.3-windows-arm64.zip) | +| macOS | arm64(Apple Silicon) | [agentmate-v0.5.0-darwin-arm64.tar.gz](https://git.eehut.com/agentmate/agentmate_release/raw/branch/main/service/v0.5.0/agentmate-v0.5.0-darwin-arm64.tar.gz) | +| macOS | amd64(Intel) | [agentmate-v0.5.0-darwin-amd64.tar.gz](https://git.eehut.com/agentmate/agentmate_release/raw/branch/main/service/v0.5.0/agentmate-v0.5.0-darwin-amd64.tar.gz) | +| Linux | amd64(x86_64) | [agentmate-v0.5.0-linux-amd64.tar.gz](https://git.eehut.com/agentmate/agentmate_release/raw/branch/main/service/v0.5.0/agentmate-v0.5.0-linux-amd64.tar.gz) | +| Linux | arm64(aarch64) | [agentmate-v0.5.0-linux-arm64.tar.gz](https://git.eehut.com/agentmate/agentmate_release/raw/branch/main/service/v0.5.0/agentmate-v0.5.0-linux-arm64.tar.gz) | +| Windows | amd64(x64) | [agentmate-v0.5.0-windows-amd64.zip](https://git.eehut.com/agentmate/agentmate_release/raw/branch/main/service/v0.5.0/agentmate-v0.5.0-windows-amd64.zip) | +| Windows | arm64(ARM64) | [agentmate-v0.5.0-windows-arm64.zip](https://git.eehut.com/agentmate/agentmate_release/raw/branch/main/service/v0.5.0/agentmate-v0.5.0-windows-arm64.zip) | -[发布说明与安装方法](service/v0.3.3/README.md) · [SHA256 校验清单](service/v0.3.3/SHA256SUMS) · [修改日志](service/v0.3.3/CHANGELOG.md) +[发布说明与安装方法](service/v0.5.0/README.md) · [SHA256 校验清单](service/v0.5.0/SHA256SUMS) · [修改日志](service/v0.5.0/CHANGELOG.md) 每份服务端发布包均包含可执行文件、安装脚本、平台安装说明和构建信息,解压后无需安装 Go。macOS 两种架构均启用 cgo,保留 CH340 USB 串口自动发现能力。 diff --git a/service/README.md b/service/README.md index b943dbf..bf6f3e0 100644 --- a/service/README.md +++ b/service/README.md @@ -2,6 +2,7 @@ | 版本 | 发布日期 | 平台 | 发布说明 | | --- | --- | --- | --- | +| v0.5.0 | 2026-10-11 | macOS、Linux、Windows;均含 amd64/arm64 | [下载与安装](v0.5.0/README.md) | | v0.3.3 | 2026-10-11 | macOS、Linux、Windows;均含 amd64/arm64 | [下载与安装](v0.3.3/README.md) | 最新版本的各平台直接下载链接见 [仓库首页](../README.md)。 diff --git a/service/v0.5.0/BUILDINFO.txt b/service/v0.5.0/BUILDINFO.txt new file mode 100644 index 0000000..dbac5fb --- /dev/null +++ b/service/v0.5.0/BUILDINFO.txt @@ -0,0 +1,8 @@ +version=0.5.0 +source_repository=https://git.eehut.com/liuchuansen/agentmate_service +source_commit=d5304ffa5cf7c385d8904d20bac7ff5809fc958b +build_date=2026-10-11 +build_script=release/build.sh +targets=darwin/arm64 darwin/amd64 linux/amd64 linux/arm64 windows/amd64 windows/arm64 +cgo_enabled=darwin:1 linux:0 windows:0 +go version go1.27.1 darwin/arm64 diff --git a/service/v0.5.0/CHANGELOG.md b/service/v0.5.0/CHANGELOG.md new file mode 100644 index 0000000..ee0d9c8 --- /dev/null +++ b/service/v0.5.0/CHANGELOG.md @@ -0,0 +1,66 @@ +# Changelog + +本文件记录 AgentMate 的用户可见变更。版本号遵循语义化版本,源码默认值见 `internal/version.Version`。 + +## [0.5.0] - 2026-10-11 + +### Added + +- Web 面板增加密码登录,首次打开时弹窗设定 8~64 个字符的密码;首次设密仅允许本机访问,密码采用随机盐与 PBKDF2-SHA256 哈希存储。 +- 设置页增加“外部访问”开关:默认监听 `127.0.0.1`,开启并重启后监听 `0.0.0.0`,保持端口不变;局域网用户登录后可查看会话、管理来源和本节点设备。 +- 支持在网页请求重启服务,重新读取配置、释放连接并初始化运行时;适用于手动运行及系统管理的服务,保留当前登录并清空内存会话,不停止 Agent。 +- 支持修改密码、退出登录、24 小时登录有效期和登录尝试限流;修改密码会注销其他浏览器,页面数据接口要求认证,写操作要求同源请求。 + +### Changed + +- Web 面板调整为会话、来源、设备与设置四个页面,改进会话状态和来源筛选、上下文占用、任务结果详情及连接中断提示。 +- 未设置密码时,即使配置了外部监听,也先退回同端口的本机监听;显式 `-listen` 参数优先于保存的配置,页面显示当前监听及是否需要重启。 +- 保留独立的 Unix socket/Windows 回环 hook 接口;显式面板 HTTP hook 地址仅接受本机非浏览器客户端,无需面板密码。节点凭据导出和服务升级继续限制为本机操作。 + +### Compatibility + +- 面板 HTTP 仍未加密,外部访问适用于可信局域网;节点订阅 HTTPS 和设备协议保持不变。 +- 面板 API 客户端需先调用密码登录接口并携带登录 cookie;健康检查及私有 hook 投递不受影响。 + +## [0.4.0] - 2026-10-11 + +### Added + +- 本机 Web 面板与 HTTP API 支持手动检查最新稳定版和服务升级,使用公开发布仓库、当前平台包与 SHA256 校验。 +- 三平台通过独立用户管理任务执行升级,保留服务定义、配置及 hooks;启动失败时回退旧二进制,并通过持久化升级记录在重启后展示结果。 +- 更新接口限制为本机同源,不提供预发布、降级、定时升级、远程节点或设备固件升级。 + +## [0.3.3] - 2026-10-11 + +### Fixed + +- 修复 Codex resume 后会话状态无法恢复和投影到设备的问题;通过新 turn 与替代 CLI 进程确认恢复,并保留已结束 turn 的守卫,避免迟到事件重新打开旧工作。 +- 解耦串口发现与设备历史:先检查串口,再通过 HELLO 验证设备,最后按设备 ID 更新历史,支持不同设备先后使用同一串口及同一设备更换串口。 +- 修复历史设备误显示“识别中”和误操作旧串口的问题;安全移除只作用于当前已识别的连接,恢复后以实际接入的设备 ID 为准。 +- 检测到串口拔出时中断对应连接;避免并发枚举的旧结果解除新建的串口暂停,保留烧录期间的串口释放保证。 + +## [0.3.2] - 2026-10-09 + +### Added + +- 设备投影支持 Codex 上下文读数:已知时下发 token 数、窗口大小、已用百分比和采集时间,未知或读数失效时下发四个 `?`。 +- 支持固件在会话页每 5 秒轮换五小时/七天配额与当前会话上下文。 +- 增加 Codex 上下文更新、清除、revision 递增及无变化不重复发送的设备回归测试。 + +### Compatibility + +- AT 协议保持为 `2`,使用现有 SESSION 字段;需与支持 Codex context 的新版固件同步升级。 + +## [0.3.1] - 2026-10-06 + +### Added + +- 面板和节点配置支持会话空闲超时(`session_timeout`),默认 5 分钟,可在本机设置中调整。 +- 设备卡片支持“安全移除”和“重新连接”:烧录前释放串口并暂停自动重连,完成后可恢复,不影响其他设备与会话监控。 +- 设备列表增加 `released`、`ejecting` 状态,以及 `can_eject`、`can_reconnect` 操作能力字段。 + +### Fixed + +- 修复 Codex 运行时等待状态投影:等待用户输入或授权时不再被普通 active/idle 观察误判为结束或重新开工。 +- 改进 Codex 上下文占用读取,减少窗口大小未知或订阅失败时的错误展示。 +- 修复 Windows 首次安装失败:停止计划任务不再通过 `powershell -Command` 内联脚本(命令行转义会破坏脚本),改为写入 `stop-tasks.ps1` 后以 `-File` 执行;没有旧任务时直接跳过。 diff --git a/service/v0.5.0/README.md b/service/v0.5.0/README.md new file mode 100644 index 0000000..00d10e1 --- /dev/null +++ b/service/v0.5.0/README.md @@ -0,0 +1,69 @@ +# AgentMate 服务端 v0.5.0 + +发布日期:2026-10-11。 + +源码提交:[d5304ffa5cf7c385d8904d20bac7ff5809fc958b](https://git.eehut.com/liuchuansen/agentmate_service/commit/d5304ffa5cf7c385d8904d20bac7ff5809fc958b)。 + +本版本增加面板密码登录、局域网外部访问与网页重启,面板改为会话、来源、设备和设置四个页面。同时包含本机服务检查与升级功能。详细变更见 [CHANGELOG.md](CHANGELOG.md)。 + +## 下载 + +| 平台 | 架构 | 发布包 | +| --- | --- | --- | +| macOS | arm64 | [agentmate-v0.5.0-darwin-arm64.tar.gz](agentmate-v0.5.0-darwin-arm64.tar.gz) | +| macOS | amd64 | [agentmate-v0.5.0-darwin-amd64.tar.gz](agentmate-v0.5.0-darwin-amd64.tar.gz) | +| Linux | amd64 | [agentmate-v0.5.0-linux-amd64.tar.gz](agentmate-v0.5.0-linux-amd64.tar.gz) | +| Linux | arm64 | [agentmate-v0.5.0-linux-arm64.tar.gz](agentmate-v0.5.0-linux-arm64.tar.gz) | +| Windows | amd64 | [agentmate-v0.5.0-windows-amd64.zip](agentmate-v0.5.0-windows-amd64.zip) | +| Windows | arm64 | [agentmate-v0.5.0-windows-arm64.zip](agentmate-v0.5.0-windows-arm64.zip) | + +校验清单:[SHA256SUMS](SHA256SUMS)。构建来源及工具链:[BUILDINFO.txt](BUILDINFO.txt)。 + +## 校验与安装 + +macOS/Linux 下载对应发布包和校验清单后,可校验该包;以下以 macOS arm64 为例: + +```sh +shasum -a 256 agentmate-v0.5.0-darwin-arm64.tar.gz +# 将输出与 SHA256SUMS 中对应行比较。 +tar -xzf agentmate-v0.5.0-darwin-arm64.tar.gz +cd agentmate-v0.5.0-darwin-arm64 +./agentmate version +./install.sh +``` + +Linux 也可用 `sha256sum` 校验。Linux 安装方式相同,按系统和架构替换文件名。 + +Windows 解压对应 ZIP 后,在 PowerShell 中进入包目录运行: + +```powershell +.\agentmate.exe version +.\install.ps1 +``` + +Windows 可用 `Get-FileHash` 计算下载包的 SHA256,再与校验清单比较。 + +安装默认使用脚本旁的二进制;包内 `README.md` 提供对应平台的详细说明。安装后面板地址为 `http://127.0.0.1:8765/`。 + +## 访问与升级说明 + +- 安装或升级后刷新面板,首次使用会弹窗要求在服务所在电脑设置 8~64 个字符的密码;后续访问需要登录。 +- 在“设置 → 访问与服务”开启“外部访问”,保存后点击“重启服务”,监听从默认 `127.0.0.1` 切换为 `0.0.0.0`,端口保持不变。其他电脑使用服务所在电脑的局域网 IP 访问。 +- 网页重启重新加载配置、释放连接并初始化服务,清空内存会话,不停止 Agent;关闭外部访问后需要回到本机面板。 +- 显式 `-listen` 启动参数优先,使用时页面开关不可编辑;未设密码时外部监听会先退回本机。 +- 面板 HTTP 未加密,仅用于可信局域网。私有 hook 无需面板密码,节点订阅 HTTPS 与设备协议保持不变。 +- 面板 API 调用需先登录并携带 cookie;节点接入信息导出与服务升级继续限制本机操作。 +- 本版本支持在本机面板检查最新稳定版并升级服务,升级要求使用官方用户级安装。使用未提供检查更新功能的旧版本时,先下载对应平台包并运行安装脚本。 + +## 构建 + +本版本使用源码提交中的 `release/build.sh`,构建 macOS、Linux、Windows 的 amd64/arm64 六种目标;macOS 启用 cgo,Linux/Windows 不启用 cgo。每份包包含安装脚本、平台 README、`BUILDINFO.txt`、统一节点说明和服务升级说明。 + +完整构建需要 macOS、Go、Xcode Command Line Tools、tar、zip 和 SHA256 工具。源码检出对应提交后运行: + +```sh +TMPDIR=/tmp go test ./... +./release/build.sh +``` + +将 `release/dist/` 的六份归档和 `SHA256SUMS` 复制到本仓库对应版本目录,并记录源码提交和构建工具链。服务与设备使用 AT 协议 `2`;真实 USB 连接和其他平台的安装、自启动行为需在对应平台验证。 diff --git a/service/v0.5.0/SHA256SUMS b/service/v0.5.0/SHA256SUMS new file mode 100644 index 0000000..4b2c22a --- /dev/null +++ b/service/v0.5.0/SHA256SUMS @@ -0,0 +1,6 @@ +6797191e414fcc5201213ad7977aa058ffd313d8f542c5a248c85b47087ede3c agentmate-v0.5.0-darwin-arm64.tar.gz +f9a36c010f86f48e36263bd2d16e6108de04528def0ce9312ed301bff96da71b agentmate-v0.5.0-darwin-amd64.tar.gz +79d1f37867944db91088f1fa34360aa5fab31cce01b245c301708abadb3dae09 agentmate-v0.5.0-linux-amd64.tar.gz +d0268f5c46cb4e0f94b81174adf35077648599395697f5e77a78988da57b412a agentmate-v0.5.0-linux-arm64.tar.gz +ca78c30e2e8cf6f6c16e7481dd2c1478ec448540d1251f46eca42792fe0cc40a agentmate-v0.5.0-windows-amd64.zip +f0ed2b2377cc2715a74de87ebdf74dc290997c5163fcc1e720dafeb42d60049b agentmate-v0.5.0-windows-arm64.zip diff --git a/service/v0.5.0/agentmate-v0.5.0-darwin-amd64.tar.gz b/service/v0.5.0/agentmate-v0.5.0-darwin-amd64.tar.gz new file mode 100644 index 0000000..6c8feba Binary files /dev/null and b/service/v0.5.0/agentmate-v0.5.0-darwin-amd64.tar.gz differ diff --git a/service/v0.5.0/agentmate-v0.5.0-darwin-arm64.tar.gz b/service/v0.5.0/agentmate-v0.5.0-darwin-arm64.tar.gz new file mode 100644 index 0000000..027ae0f Binary files /dev/null and b/service/v0.5.0/agentmate-v0.5.0-darwin-arm64.tar.gz differ diff --git a/service/v0.5.0/agentmate-v0.5.0-linux-amd64.tar.gz b/service/v0.5.0/agentmate-v0.5.0-linux-amd64.tar.gz new file mode 100644 index 0000000..ae38936 Binary files /dev/null and b/service/v0.5.0/agentmate-v0.5.0-linux-amd64.tar.gz differ diff --git a/service/v0.5.0/agentmate-v0.5.0-linux-arm64.tar.gz b/service/v0.5.0/agentmate-v0.5.0-linux-arm64.tar.gz new file mode 100644 index 0000000..475a79f Binary files /dev/null and b/service/v0.5.0/agentmate-v0.5.0-linux-arm64.tar.gz differ diff --git a/service/v0.5.0/agentmate-v0.5.0-windows-amd64.zip b/service/v0.5.0/agentmate-v0.5.0-windows-amd64.zip new file mode 100644 index 0000000..186f7f0 Binary files /dev/null and b/service/v0.5.0/agentmate-v0.5.0-windows-amd64.zip differ diff --git a/service/v0.5.0/agentmate-v0.5.0-windows-arm64.zip b/service/v0.5.0/agentmate-v0.5.0-windows-arm64.zip new file mode 100644 index 0000000..e4b2ca3 Binary files /dev/null and b/service/v0.5.0/agentmate-v0.5.0-windows-arm64.zip differ