本版新增视频壁纸、查找框的大小写与正则开关、快捷键一览和长对话分页加载,正文栏可拖得更窄,并修复多处保存、粘贴与显示问题。
新增
- 壁纸可以选 MP4 或 WebM 视频,作为静音循环的动态壁纸;窗口隐藏或失焦、系统减弱动效或精简效果下停在第一帧。关联 #14357。
- 对话里的查找框多了两个开关:区分大小写,以及把查询当作正则表达式。关联 #14198 by @imcreazy。
- 设置的外观页增加「快捷键」一栏,列出窗口里所有可用按键,可以搜「快捷键」「Ctrl」「Esc」等词找到。关联 #14198 by @imcreazy。
- agent 浏览器的网页可在「设置 → 外观」开启空闲休眠:15 分钟无人使用后整页收起省内存,再用时恢复为同一标签页。默认关闭。关联 #14332 by @jf200s。
- 版本列表里的下载和后台自动下载现在都可以取消;取消会停止传输,并删除这次下载留下的部分文件。关联 #14338。
- 新增可选的历史接口,按页读取正文并保留稳定的消息位置和跨页工具上下文;现有客户端继续全量读取。关联 #14048、#14087 by @SivanCola。
变更
- 壁纸不再有 12 MB 上限,原样使用你选的图片;上传改为边收边写入磁盘,读取支持分段,大文件不再占满内存。关联 #13980。
- 正文字宽现在可以连续拖到 640px,不再停在「适宜阅读」的 760px;按 Home 或不拖动时仍是 760px。关联 #14384。
- 阅读栏左右两侧的拖动把手平时不再显示,鼠标移到栏边缘才出现,拖动和键盘调整不变。关联 #14352 fixed in #14353。
- 移除工作台的「加宽」按钮、独立加宽模式及 Ctrl/Cmd+Shift+B;可拖动分隔条或聚焦后用方向键调宽。关联 #14324 fixed in #14335 by @lancy69。
- 轮次多的对话里,右侧提问细条会把相邻几条折成一组,悬停显示涵盖的范围;右键某条可加书签。关联 #14198 by @imcreazy。
- 「运行分析」入口变成图标加文字,分析页标题左侧多了返回箭头;点已在屏上的会话会回到正文。关联 #14198 by @imcreazy。
- 导出会话多了 Markdown 格式:只保留提问与回答,按发生顺序;JSON 仍保留全部字段。关联 #14198 by @imcreazy。
- 开启「派发」后,把任务派到侧边栏里你自己的项目时,不再因该项目尚未决定信任而停在信任卡上。关联 #13341。
- 没有选过项目也没有记住的项目时,首次启动不再打开用户主目录,而是打开应用自己管理的一个小目录,它不会被记成项目。关联 #14363。
- 输入
/后可继续输入描述中的关键词查找技能和命令;名称匹配仍优先于描述匹配。关联 #14323 fixed in #14344 by @lancy69。 - 工具参数缺必填项、待办列表规则不符、diff 证据被拒时,报错会直接给出合法示例或改用 files 证据的出路。关联 #14311。
- 支持分页的服务端优先显示最近消息;读取旧页保留阅读位置和控件,搜索会提示历史覆盖不完整。关联 #14048、#14087 by @SivanCola。
修复
- 切回「发送反馈」标签或点击反馈窗口标题后,Ctrl+V 也能添加截图;打开窗口后立刻粘贴也不再被偶尔忽略。关联 #14205 fixed in #14333 by @lancy69、#14333 by @lancy69。
- 新对话第一次保存前在右侧提问细条上加的书签,保存后不再消失,重启后也不会出现在另一段新对话里。关联 #14296 by @imcreazy。
- 接口报告「缓存命中 0」时按完全未命中计算,缓存命中率不再虚高;异常的超额命中被截断,99.5% 以上不再写成 100%。关联 #14313 by @jf200s。
- 后台任务启动时的提示按界面语言显示为「后台任务已开始:…」,不再是唯一的英文。关联 #14308。
- 正文字宽的两个手柄在第一次拖过之后不再失效;拖动时两侧栏按各自比例让位,输入框跟随正文变宽。关联 #14320 by @imcreazy。
- 展开待办计划时,右侧消息细条和「跳到最新 / 回到顶部」按钮不再被顶起;计划面板浮在输入框上方。关联 #14321 by @imcreazy。
- 上下文压缩完成后的诊断行按界面语言写成一句话,不再是英文 key=value。关联 #14307。
- 工作台右键菜单合并编辑操作与「加入对话」;阅读和只读视图不显示修改操作,未选中文字时不显示引用。关联 #14326 fixed in #14348 by @lancy69。
- 还没确认的提问卡片滚出视野再回来后,已勾选的选项、自填文字、补充说明和所在题目会保留。关联 #14336 fixed in #14337。
- 用智能体预设建的会话,升级后因内置工具变化不再变成只能查看;按当时记录的工具继续,并提示一次。关联 #14360 fixed in #14370。
- 执行过程那一行的「N 项运行中 / 失败 / 操作」和标题现在字号、字重一致。关联 #14364。
- 自动命名时标题模型把输出额度都花在思考上,程序会放宽额度重试一次,而不是直接失败。关联 #14374。
- 设置「存储」里「导入原生会话」的卡片不再露出浏览器自带的文件选择框,改用应用风格按钮。关联 #14378。
- 子代理以及计划者、Guardian 的文件读取各用独立记录,不再刷新执行代理的过期文件保护而覆盖你的修改。关联 #14025、#14133 by @SivanCola。
- Guardian 自身的
use_capability调用对真实目标做只读检查,拒绝写入和已声明的宿主变更。关联 #14025、#14133 by @SivanCola。 - 重启后 Git 暂时不可用时保留隔离结果的文件和 ID;恢复前核对托管目录与仓库身份,错配的记录保留且不会被清理或应用。关联 #14025、#14133 by @SivanCola。
- 乐观模式下的任务写入会检查兄弟任务占用,包含动态本地工具;不相交的写入仍可并行。关联 #14025、#14133 by @SivanCola。
升级须知
- 派发到侧边栏里没决定过信任的项目时,该项目会被记为已信任并直接发出任务;家目录等不可整体信任的文件夹仍会询问。关联 #13341。
- 乐观模式下,同一文件被兄弟任务占用时,后到的写入会以 write.path_busy 被拒绝,而不再静默覆盖。关联 #14025。
贡献者
感谢本版本的贡献者:@imcreazy、@jf200s、@SivanCola、@lancy69
This release adds video wallpapers, case and regex switches in find, a shortcut sheet and paged loading of long conversations, lets the reading column go narrower, and fixes several saving, pasting and display problems.
New
- A wallpaper can be an MP4 or WebM video, played muted and looping; it stays on its first frame while the window is hidden or unfocused, under reduced motion or reduced effects. Refs #14357.
- The find bar gained two switches: match case, and read the query as a regular expression. Refs #14198 by @imcreazy.
- The appearance settings gained a keyboard shortcut sheet listing every chord the window answers to, reachable by searching "shortcut", "Ctrl" or "Esc". Refs #14198 by @imcreazy.
- Agent browser pages can sleep when idle (Settings → Appearance): a page nobody drives for 15 minutes is folded away and wakes as the same tab. Off by default. Refs #14332 by @jf200s.
- A version download, started from the version list or by automatic download, can now be cancelled; cancelling stops the transfer and removes the partial files. Refs #14338.
- An optional history API reads the transcript in bounded pages with stable positions and cross-page tool context; existing clients keep full reads. Refs #14048, #14087 by @SivanCola.
Changed
- Wallpapers have no 12 MB limit and are used as chosen; the upload is written to disk as it arrives and served in ranges, so a large one no longer fills memory. Refs #13980.
- The reading column can be dragged continuously down to 640px instead of stopping at 760px; Home and an untouched window still give 760px. Refs #14384.
- The reading column's resize grips no longer draw at rest; they appear under the pointer or on keyboard focus, and dragging and keys are unchanged. Refs #14352 fixed in #14353.
- Removed Widen mode, its button and Ctrl/Cmd+Shift+B; use the divider or the arrow keys on it to resize. Refs #14324 fixed in #14335 by @lancy69.
- A long conversation folds neighbouring questions in the rail into one line and names the range on hover; right click stars one. Refs #14198 by @imcreazy.
- The run analysis entry reads as words beside its icon, the page has a back arrow, and picking a conversation already on screen returns to reading. Refs #14198 by @imcreazy.
- A conversation can be exported as Markdown, keeping only the questions and answers in order; JSON still carries every field. Refs #14198 by @imcreazy.
- With dispatch on, a task sent to a project in your sidebar no longer stops on its trust card because you hadn't decided about it yet. Refs #13341.
- With no chosen or remembered project, a first launch opens a small folder the app owns instead of your home directory; it is never remembered as a project. Refs #14363.
- Type description keywords after
/to find skills and commands; name matches still rank first. Refs #14323 fixed in #14344 by @lancy69. - A tool call missing a required field, a todo list breaking a rule, and a diff citation for command-made changes now show a valid example or the files-evidence way out. Refs #14311.
- Paging servers show the latest messages first; older pages keep your reading position and controls, and search says when history is incomplete. Refs #14048, #14087 by @SivanCola.
Fixed
- Pasting a screenshot works after returning to the Send feedback tab or clicking the dialog heading, and a paste right after opening is no longer sometimes ignored. Refs #14205 fixed in #14333 by @lancy69, #14333 by @lancy69.
- A question starred in the rail before a new conversation is first saved stays starred, and no longer reappears in another unsaved conversation after a restart. Refs #14296 by @imcreazy.
- A request reported with zero cache hits counts as a full miss, so the hit rate no longer drifts up; over-reported hits are clamped and 99.5% no longer shows as 100%. Refs #14313 by @jf200s.
- The notice shown when a background job starts is worded in the interface language instead of staying the one English line. Refs #14308.
- The reading column's grips no longer stop after the first drag; sidebars give way while dragging and the composer follows the width. Refs #14320 by @imcreazy.
- Opening the todo plan no longer pushes the message rail or the jump buttons up; the panel floats above the composer. Refs #14321 by @imcreazy.
- The line shown after a context fold is one sentence in the interface language, not an English key=value dump. Refs #14307.
- Workbench text menus combine editing and Add to conversation, respect read-only views and selection, and keep focus and undo/redo. Refs #14326 fixed in #14348 by @lancy69.
- An unanswered ask card keeps its picks, typed text, notes and current question when it scrolls out of view and back. Refs #14336 fixed in #14337.
- A conversation bound to an Agent preset no longer turns read-only after an upgrade changes a built-in tool; it continues with the recorded tools and says so once. Refs #14360 fixed in #14370.
- The running / failed / action counts on the activity line now share the title's size and weight. Refs #14364.
- When the title model spends its whole output budget thinking, automatic naming asks once more with room for the title instead of failing. Refs #14374.
- The "Import a native session" card in Settings → Storage no longer shows the browser's own file input; it uses an app-styled button. Refs #14378.
- Reads by child tasks, the Planner and the Guardian use their own records and no longer refresh the executor's stale-file guard and overwrite your edits. Refs #14025, #14133 by @SivanCola.
- The Guardian's own
use_capabilitycalls enforce read-only execution on the real target, refusing writes and declared host mutations. Refs #14025, #14133 by @SivanCola. - After a restart with Git unavailable, an isolated result keeps its files and ID; recovery checks managed paths and repository identity, and a mismatched record stays untouched. Refs #14025, #14133 by @SivanCola.
- Optimistic task writes honour live sibling claims, including dynamically resolved local tools; disjoint writes stay parallel. Refs #14025, #14133 by @SivanCola.
Upgrade notes
- Dispatching to a sidebar project you have not decided about records it as trusted and sends the task; folders that cannot be trusted whole, such as your home directory, still ask. Refs #13341.
- In optimistic mode, a write to a file a sibling task holds is refused with write.path_busy instead of silently overwriting it. Refs #14025.
Contributors
Thanks to this release's contributors: @imcreazy, @jf200s, @SivanCola, @lancy69
What's Changed
- test(delegation): observe the running fleet job before the children are released by @esengine in #14316
- fix(stats): an endpoint's zero cache hit is a full miss, not an absence by @jf200s in #14313
- feat(studio): match case and regular expressions in the find bar by @imcreazy in #14301
- feat(studio): export a conversation as Markdown by @imcreazy in #14299
- fix(studio): make run analysis easy to enter and to leave by @imcreazy in #14294
- fix(jobs): a started background job is announced with a code and its payload, so it follows the language by @esengine in #14317
- feat(studio): fold a crowded conversation rail, and let a question be starred by @imcreazy in #14296
- feat(studio): a shortcut sheet in the settings by @imcreazy in #14300
- Keep the plan panel from pushing the rail and the jump arrows by @imcreazy in #14321
- fix(compaction): a finished fold is announced with a code and a typed payload, so it follows the language by @esengine in #14322
- Let the reading column's grips, sidebars and composer move together by @imcreazy in #14320
- fix(studio): route feedback image paste through the dialog by @lancy69 in #14333
- feat(browser): a page nobody drives sleeps, and wakes as the same target by @jf200s in #14332
- fix(studio): an unanswered ask card keeps its picks when its block unmounts by @esengine in #14337
- fix(migrate): an imported session completes its sidecar by @chuiwenwei in #14213
- build(deps): bump zod from 3.25.76 to 4.6.6 in /workers/forum by @dependabot[bot] in #14339
- build(deps-dev): bump fast-uri from 3.1.8 to 3.1.9 in /tools/acp-conformance by @dependabot[bot] in #14340
- build(deps): bump undici from 8.12.1 to 8.12.3 in /desktop/frontend-next by @dependabot[bot] in #14342
- fix(studio): the feedback form takes a paste in the commit that draws it by @esengine in #14347
- fix(completion): find slash skills by description by @lancy69 in #14344
- fix(studio): the reading column's grips draw nothing until the pointer is on them by @esengine in #14353
- feat(studio): first run without a picked workspace by @Oliver-Rui in #14351
- feat(studio): cancel an update download from the Versions panel by @1012905 in #14345
- fix(studio): remove redundant workbench widening mode by @lancy69 in #14335
- docs: remove the first-run workspace design (moved to #14363) by @esengine in #14367
- feat(studio): wallpapers upload as a streamed body, have no size limit and are served in ranges by @esengine in #14369
- fix(studio): a conversation bound to an Agent preset continues when a built-in tool schema changed by @esengine in #14370
- fix(tools): refusals of malformed calls, todo lists and diff evidence show what a valid one looks like by @esengine in #14372
- Set the activity line in one type scale by @imcreazy in #14376
- fix(studio): automatic naming asks once more with room when the title model only thought by @esengine in #14375
- fix(studio): the native session import card uses the app's button like the legacy one beside it by @esengine in #14378
- feat(studio): a wallpaper can be an MP4 or WebM video, played muted and looping by @esengine in #14373
- fix(dispatch): trust an undecided project the user named in their own list by @esengine in #14381
- fix(studio): integrate workbench text context menus by @lancy69 in #14348
- feat(studio): a launch with no chosen or remembered project opens the app's own auto workspace, not home by @esengine in #14379
- fix(agent): give each child its own file views / 修复父子代理文件读取记录共享 by @SivanCola in #14382
- feat(studio): the reading column can be dragged narrower than the readable measure by @esengine in #14384
- fix(guardian): enforce resolved read-only execution / 修复审查角色动态写入越权 by @SivanCola in #14386
- fix(isolation): retain results on inspection errors / 修复恢复检查失败丢失隔离结果 by @SivanCola in #14390
- fix(agent): isolate review-role file views / 修复审查角色刷新执行代理读取记录 by @SivanCola in #14387
- test(agent): wait out a held final observation, not a slow seal by @xxoingr in #14391
- fix(studio): a star placed before a conversation's first save stays with it by @xxoingr in #14393
- feat(history): add cursor-based history API / 独立游标分页接口 by @SivanCola in #14365
- fix(isolation): verify recovered record identity / 校验隔离恢复记录的宿主身份 by @SivanCola in #14392
- fix(agent): coordinate optimistic child writes / 修复乐观子代理具名写入绕过占用 by @SivanCola in #14394
- feat(studio): load transcript pages incrementally / 正文渐进分页界面 by @SivanCola in #14366
- docs(release): studio 2.51.0 notes by @esengine in #14396
New Contributors
- @Oliver-Rui made their first contribution in #14351
- @1012905 made their first contribution in #14345
Full Changelog: studio-v2.50.0...studio-v2.51.0
macOS 已用 Developer ID 签名并公证,打开时不需要清除隔离属性。Windows 的窗口、内核与安装器都经 Certum 代码签名证书做了 Authenticode 签名。Linux Debian 系从 .deb 安装,Fedora、RHEL、openSUSE 等从 .rpm 安装(sudo dnf install ./ReasonixStudio-linux-amd64.rpm)。x86_64 用文件名带 amd64 的包,aarch64(统信 UOS、麒麟等)用带 arm64 的包。也提供 .AppImage(只提供下载,不会自更新;需要 FUSE 2,或用 --appimage-extract-and-run 启动)。
三个平台都能自更新:Linux 的 .deb 走自己的包(.rpm 的自更新尚未提供,请手动下载新包),Windows 运行下一个安装器,macOS 替换自身 bundle。