Skip to content

Releases: g1at/Relay

Relay 3.0.2

Choose a tag to compare

@g1at g1at released this 23 Sep 10:50

Relay 3.0.2:安装、卸载及旧版升级修复。同步提供给新旧更新源,安装后统一使用 g1at/Relay。旧客户端已缓存旧包且无法重新检查时,请手动下载本版本完整 Setup.exe;请勿删除会话或配置。

Relay 3.0.1

Choose a tag to compare

@g1at g1at released this 21 Sep 10:10

Relay 3.0.1 更新说明

发布日期:2026-09-21 | 相对安装包:3.0.0 → 3.0.1
安装包:Relay-3.0.1-Setup.exe(Windows x64 安装向导)

本次为 任务可靠性与本地交付体验修复版本。重点改进 异常退出后的执行过程保留、中途补充要求与任务收尾、本地文件和文件夹预览、模型目录权限提示、技能待确认更新页面响应,并将后续更新迁移至 g1at/Relay。

本说明已逐项对照 3.0.0 与 3.0.1 实际 EXE 解出的应用代码,并核验新包的版本、更新源、随包文件和校验值。


一、3.0.1 核心更新

💾 异常退出后保留思考与工作过程

  • 任务运行期间在后台持续保存执行过程快照,包含已经收到的思考展示、工具调用、工具结果与阶段性输出
  • 再次打开会话时,结合快照与事件日志恢复已保存过程,减少长任务在 Relay 意外关闭后只剩空白记录的情况
  • 支持读取上一次应用运行留下的任务日志,并按任务归属校验,避免恢复到其他会话
  • 恢复过程中保留原有错误或中断状态;对已有最终回复或已保存终态过程的历史轮次,不做重放覆盖

恢复范围取决于实际落盘的快照和日志,意外退出前尚未写入的数据仍可能缺失。此机制不代表自动完成中断任务,也不能还原旧版本从未保存的内容。

📁 本地交付文件与文件夹

  • 对话中的明确本机文件链接可以打开项目目录之外的文件;支持的格式在右侧栏预览,也可使用系统打开方式
  • 文件夹链接直接定位并展开右侧文件树;项目外的目录通过临时目录树展示,便于继续浏览其中的文件
  • 修复 Markdown 文件预览中的相对图片加载,以及来源文档名含 #、字面 % 编码时的相对路径解析问题
  • 加强交付目录指引:每轮输入及子 Agent 委派时传递文件位置规则,收尾出现项目外本地链接时提醒核对一次

交付规则用于引导模型遵守目标目录,不能保证所有工具写入都落在该目录。打开项目外文件也不会自动搬迁文件或更改项目归属;路径解析、文件访问限制和原有预览格式范围仍然适用。

🗂️ 更清晰的文件卡片与侧栏

  • 独立列出的交付文件链接使用文件卡片展示,正文中的引用保留行内链接样式
  • 重新调整源码、文档等文件类型标识的图形和配色,改善 Python 等类型图标的识别效果
  • 修复点击文件预览时额外创建空白文件树页签的问题
  • 切换会话时清理原会话文件预览,返回已有工具页签或侧栏入口,并保留侧栏关闭状态
  • 调整聊天内容与输入框的宽度和水平对齐,改善滚动条出现后的边缘错位

文件图标调整不代表新增文件类型支持;原先不能直接预览的格式仍需通过系统应用打开。

📦 后续更新入口迁移

  • 3.0.1 的内置应用更新源由 g1at/relay-updates 切换为 g1at/Relay
  • 3.0.1 作为迁移版本,向两个仓库发布同一份经过校验的安装包,让旧版用户通过原入口升级
  • 高于 3.0.1 的后续版本仅向 g1at/Relay 发布;relay-updates 保留历史版本与迁移版本
  • 发布流程增加版本、内置更新源、安装包哈希和目标仓库校验,避免覆盖已有版本或混用不同构建产物

已有 3.0.0 安装包及其更新入口保留,旧用户可以通过旧源升级到本版。


二、对话与任务体验

⏯️ 中途补充要求与暂停

  • 按 SDK 的实际输入消费状态更新补充消息,减少已接收输入仍留在待处理队列中的情况
  • 暂停时清理尚未消费的排队输入,避免继续任务后意外执行旧补充要求
  • 修正已接收的补充消息被错误标记为取消,并清理因误取消恢复出的未编辑草稿,减少重复发送
  • 优化任务模式准备阶段的等待时机:内部模式准备命令实际开始执行后再计入短确认超时,减少冷启动或恢复时过早失败

“尽快跟进”仍受 SDK 的输入处理时机约束,不会立即打断正在执行的工具;“排队处理”仍保留其原有的排队语义。

🎯 任务收尾与最终回复

  • 成功结果中附带工具拒绝记录时,仍保留正常回复,并单独说明被拒绝的工具请求
  • 修正上述情况导致后台子 Agent 仍在运行、主任务却提前结束的问题
  • SDK 成功结束但最终结果字段为空时,从同一轮已有的可信助手输出中恢复可展示回复,减少目标任务结束后没有结论的情况
  • 主窗口与快捷小窗统一处理成功结果中的工具拒绝记录,避免将整个任务误判为失败
  • 任务结束标签改为“已结束”,避免仅凭运行结束就表示用户目标一定“已完成”

如果本轮没有生成可用回复,界面仍会如实保留未取得最终回复的提示;此修复不会编造结论,也不代表可以判定所有实际交付要求均已完成。

🧭 历史续接与上下文衔接

  • 预热会话尚未真正接收用户输入时,不再用它覆盖历史中的有效续接标识
  • 重建对话上下文、需要截取历史时,在原有长度预算内保留较早用户消息提供的部分资料链接,减少长任务续接后丢失文档地址的问题
  • 改善任务准备、输入交付与中断阶段的错误标识,使失败位置更容易区分

本版未升级 Claude Agent SDK,也未改写其上下文压缩机制。上述改进针对 Relay 的续接记录与上下文补充逻辑。

📊 运行中的 Token 采集

  • 在 SDK 支持用量查询时,任务运行期间周期采集累计用量,不再只等待轮次结束结果
  • 提前记录已观测到的输入、输出和缓存用量,减少长任务异常退出后整段消耗未计入的问题
  • 累计采集与最终结果复用原有增量统计机制,并隔离会话重置和迟到响应,避免将子 Agent 用量再次单独叠加
  • 用量查询失败或超时后停止该查询的后台采样,保留正常结果采集,不影响对话执行

本次新增的是运行期间采集。每日归属和汇总服务沿用既有实现;本地记录仍受采样时间、服务商口径及可用日志限制,不承诺与 API 平台逐日完全一致,也不会自动补齐所有旧记录。


三、设置、知识管理与界面改进

⚙️ 模型目录与实际权限分开说明

  • 模型目录和图像候选明确标注“Key 权限未验证”,避免将服务商返回的公共目录理解为当前 Key 的可调用范围
  • 更换服务商地址或密钥后清理旧目录缓存;配置版本变化时拒绝迟到的探测结果
  • 协调配置保存、连接检测与目录读取的状态,减少旧请求覆盖新设置的问题
  • 发现图像候选时不再自动占用未分配的图像路由,保留用户的明确选择及旧配置迁移结果

3.0.0 获取模型目录时已经携带 API Key 或 Auth Token,本版并非补加认证请求头。目录展示不会逐一验证所有模型权限;连接检查也只验证当前测试模型。

🧩 技能待确认更新页面更流畅

  • 将候选扫描、读取、校验、差异计算、发布与忽略等文件操作移至后台线程,减少主界面被同步磁盘操作阻塞
  • 技能变更按队列串行执行,正常退出时等待已接收的操作处理完毕
  • 合并重复的列表刷新,在确认与提交期间保留当前条目状态,减少连续点击和异步刷新相互干扰
  • 保留原有校验、冲突检查与替换流程;“忽略候选”不会删除正式技能

大型技能目录的扫描和处理仍需要时间,本次重点是避免等待期间拖慢整个界面。

🧠 记忆保护的误拦截修正

  • 允许符合严格条件的 PowerShell 源码文本查询包含 relay-memory 字样,减少只读代码排查被误认成绕过记忆管理的情况
  • 保留对记忆文件直接修改、复杂脚本和其他不符合条件命令的既有限制

📄 开源材料与第三方说明

  • 将 Apache-2.0 许可证、NOTICE、第三方声明及相关随包许可证纳入应用构建范围

Relay 源码已在 g1at/Relay 公开,采用 Apache-2.0;第三方组件继续适用各自许可证。