Repository navigation
Releases: zjt-dev/LiveAgent
Releases · zjt-dev/LiveAgent
Release list
LiveAgent v3.0.0
LiveAgent v3.0.0
新增远程工作空间(Bash + SFTP 同屏侧栏)、桌面端换肤与模型推理档位;首条消息冷启动延迟经并发预热与连接复用显著降低。
本版本覆盖 v1.3.5 → v3.0.0(54 个提交,154 个文件,+10300 / −1267 行)。以下按【新增】与【优化】两类归纳。
Full Changelog: v1.3.5...v3.0.0
【新增】
远程工作空间侧栏(Bash + SFTP 同屏)
远程文件夹项目下,Right Dock 新增 remoteWorkspace 工具:一个面板里同时提供交互式 Bash 终端与 SFTP 文件管理器,二者绑定同一条 SSH 会话、同一个远端根。
- 协同语义:Bash 区首次 attach 后自动
cd到当前远端根;SFTP 区以同一远端根为初始目录。终端exit、重连、关闭的状态在两个区域一致。 - 单会话复用:优先复用同主机上已连接且已开 SFTP 的会话,避免同一主机堆叠连接。会话与【SSH 隧道】面板共享,在任一处建立的连接立即对另一处可见。
- 打开远端文件:SFTP 行可直接打开到编辑器的远端文件 overlay;终端输出支持右键「加入会话」。
- 可拖入工作台:该工具纳入 Pane 化体系(身份键、拖拽载荷、租约隐藏、布局恢复、最小尺寸 320×320),拖到工作台后 dock 隐藏该 tab,Pane 关闭后回归。
- 入口可达性修复:此前远程项目的本地根恒为空,导致顶栏 dock 折叠按钮被「本地项目工具不可用」的文案锁死,侧栏无处可见。现将「本地工具不可用原因」与「面板入口可点击性」解耦。
- 手动
cd不被打断:一次cd的记账粒度是「会话 id + 远端根」且放在模块级,拖到工作台重挂不会重发cd;SSH 重连换新 shell 时会重发。
会话切换 → 活动工作区跟随
在侧栏点开一个属于另一个项目的会话(典型场景:本地项目与远程文件夹之间切换)时,侧栏高亮、列表 scope、右栏项目上下文现在会立即跟到该会话所属的工作区;此前只有再点一次项目行才对齐。
- 归属判定用会话自己的锚点(本地会话为落盘
cwd,远程会话为身份串ssh://<hostId>/<abs>),绝不复用「本地根视图」——后者在远程下恒为空,会把远程会话错认成不属于任何项目。 - 反解不出项目、已归档项目一律不动,不回退也不新建项目。
- 后台水合与工作台 Pane 聚焦均不触发跟随。
桌面端换肤:配色预设 + 聊天背景图
- 设置页新增主题切换与配色预设,统一换肤文案。
- 支持聊天背景图;背景图改存磁盘引用而非 localStorage,绕开 5MB 配额限制。
- 换肤背景图覆盖技能 Hub、MCP Hub 与设置页。
模型推理档位配置
- 设置页可按模型配置思考档位(reasoning effort),定时任务(cron)的提示词推理档位与模型设置对齐。
- 档位缺省跟随模型目录;模型目录未提供档位表时按「不支持」处理,不猜测。
工作区与编辑器
- 文件树多选:支持多选与批量操作。
- 编辑器 tab 批量关闭:右键菜单提供「关闭左侧 / 关闭其他 / 关闭全部」,批量关闭语义抽为不依赖框架的纯函数。
- 资源管理器右键「在 LiveAgent 中打开」:文件夹可直接以当前项目打开。
- 终端复制与加入会话:终端支持复制输出、将选中内容加入会话。
- 输入框拖拽调整高度:对话输入框支持拖拽改高。
- 生成提交信息:Git 面板新增生成提交信息功能。
- 托盘菜单:新增托盘菜单项。
自动检查更新开关
设置页新增自动检查更新的开关;程序更新源指向 zjt-dev/LiveAgent Releases。
【优化】
首条消息冷启动(主要收益)
首次发送消息的等待时间此前主要由 MCP server 串行冷启动与上游连接的冷建连构成,本版本做了三处针对性优化:
- MCP server 并发拉起并空闲预热:消除串行启动的叠加延迟。实测最大项是
npx解析开销,而非此前推断的「npx 成本固有」。 - 并发争抢的定位与缓解:补冷启动观测日志后修正了归因错误,确认争抢随并发度上升、debug 构建下更明显。
- 上游连接预热:proxy 层预热上游连接,消除首条消息的冷建连成本。
- 发送准备链埋点:补齐埋点并缓存平台解析,为后续优化提供可观测基线。
MCP 稳定性
- 协议版本重试共享一份超时预算:此前会在重试中重复消耗
timeoutMs,实际付出约 5 倍等待。 - 并发测试耗时收敛:单例从 5s 降至 1.5s。
- 补齐「直连 node」的三种做法与取舍;包入口解析改为按版本号取最高,规避路径失效。
长会话与进程资源
- 长会话渲染进程 CPU 尖峰与隐藏窗口空转:消除空转轮询。
- 分离子进程回收:按在线状态与退避策略收敛常驻轮询。
稳定性与正确性修复
- 轨迹持久化队列静默死锁:
remoteWorkspace槽位只在 TS 侧登记、Rust 白名单未同步,导致整批写入被拒并无限重入队列——轨迹既不落盘也不发事件且不报错。已补齐 Rust 名单并加「只能在末尾追加」约束,TS 侧改为按槽位名分组、不再依赖硬编码下标,并新增 TS ↔ Rust 名单一致性测试防漂移。 - 队列补发的工作目录解析:WebUI 排队的回合补发时,回退链缺少「目标会话自己落盘的 cwd」,会把远程会话改归到另一个本地项目。现改为与正常情况下同一规则,并先剥掉身份串再兜底。
- 修复取消操作因过期运行 ID 失效。
- 修复 dock 终端 tab 点击无法激活(指针捕获重定向 click)。
- 修复换肤背景图在对话页被完全遮挡。
- 修复文件树「打开所在目录」在含空格路径下失效。
- 修复回复区原生滚动条拖拽被吸回底部。
- 修复
MentionComposer命令式句柄缺失refreshMention。 - 修复回复区 / 输入框在大段粘贴时内容丢失。
- 三个 Hub 页面根容器去掉重复的背景类。
- 恢复合并过程中丢失的输入框拖拽调整高度与换肤设置项。
- DeepSeek:按模型能力放开图片输入,flash 家族不再被当作纯文本。
- Bash 工具结果显式说明「本次被 provider 超时上限杀掉」,不再表现为无因由失败。
- 剥离 WebView 注入的
sec-fetch-*请求头,避免中转拒绝。
构建与工程
- Windows 构建修复:
cfg(unix)门控常量导致的 E0425 编译失败。 make目标现可在 Windows 上使用。- 修复共享入口比较在 Windows CRLF 检出下的误报。
- 生成物按
protoc-gen-go重新生成注释格式;清理合并后的 lint/format 债。 - 发布流程:发布说明改用 DeepSeek 官方 API 并收敛密钥来源。
已知边界
- macOS 资产在本仓库发布中不产出:Apple 签名与公证凭据仅存在于上游仓库。工作流已将 macOS 任务标记为
continue-on-error,其失败不阻塞 Windows / Linux 发布。 - 远程工作空间未做三平台实机验证:本轮验证为模型/合同测试加三端 TypeScript 编译,实机 SSH 连接与拖拽未覆盖。
- 远程工作空间不提供本地 ↔ 远端传输:远程项目没有本地根,因此上传/下载入口不出现;需要在本地与远端之间搬文件时,可用 Bash 区在远端执行
scp/rsync/curl。
安装包
| 平台 | 文件 |
|---|---|
| Windows | LiveAgent-v3.0.0-Windows-x64.msi · LiveAgent-v3.0.0-Windows-x64-Setup.exe · LiveAgent-v3.0.0-Windows-x64-portable.zip |
| Linux | LiveAgent-v3.0.0-Linux-x86_64.AppImage · .deb · .rpm |
应用内更新由 latest.json 驱动;已安装 v1.3.x 及更早版本可经自动更新升级。
LiveAgent v2.0.0
Full Changelog: v1.3.2...v2.0.0
LiveAgent v1.3.2
Full Changelog: v1.3.1...v1.3.2
LiveAgent v1.3.1
Full Changelog: v1.3.0...v1.3.1
LiveAgent v1.3.0
Full Changelog: https://github.com/zjt-dev/LiveAgent/commits/v1.3.0