github esengine/DeepSeek-Reasonix studio-v2.20.4
Reasonix Studio v2.20.4

pre-release3 hours ago

本版正式打通 Web Studio 与桌面 Studio:手机或其他浏览器可通过同一账号安全连接家中电脑,看到并操作同一套会话;桌面端会明确显示谁正在远程控制,并可随时断开。

新增

  • Web Studio 现在使用完整的 Studio 界面,通过端到端加密的远程通道访问电脑上的同一内核、工作区、会话与模型配置,不再是另一套简化控制页 (#11054 by @esengine, #11053 by @esengine)
  • 桌面端顶部新增统一的「设备访问」状态:显示互联网远程设备数量、稳定的设备编号、Web Studio 在线状态,以及连接和离开提示 (#11058 by @esengine)
  • 桌面端可对互联网远程设备执行两步确认断开;中转服务只允许同账号的电脑端关闭对应控制连接 (#11057 by @esengine, #11058 by @esengine)
  • ACP 客户端可收到上下文用量和会话费用 (#11083 by @esengine)
  • 发往模型服务的请求带上 Reasonix/<版本> 标识 (#11063 by @esengine)

变更

  • 从 Web Studio 发出的消息在桌面端标注「来自 设备 N」,两端看到同一条会话和回复,便于确认当前操作来源 (#11058 by @esengine)
  • 即使没有开启局域网手机访问,桌面端仍会持续显示互联网远程设备状态;局域网开关不会影响同账号 Web Studio (#11058 by @esengine)
  • 远程请求超时、连接断开和身份校验错误改为中文可操作提示;请求错误固定在右下角悬浮显示,主动断开后提供「重新连接」入口 (#11058 by @esengine)
  • 只有完成端到端加密握手的 Web Studio 才会出现在桌面设备列表;中转服务只转发密文,无法读取会话和文件内容 (#11054 by @esengine, #11058 by @esengine)
  • 断开命令由本机窗口发起,并同时校验账号和单次连接标识,不能跨账号关闭其他人的连接 (#11057 by @esengine)
  • 打开 Web Studio 时授权请求与页面加载并行进行,连接更快 (#11067 by @esengine)
  • 计划里写明要改的文件时,这一轮什么都没改就不会判为完成 (#11060 by @esengine, #11056 by @esengine)
  • 计划步骤的检查命令在最近一次改动之后跑通即可放行,不再要求额外引用;没有检查命令的步骤不再阻塞 (#11046 by @esengine)
  • edit 找不到 old_string 时会指出是空行数量不同;空行数量不同但其余一致时也能匹配 (#11064 by @esengine, #10946 by @boscocp)

修复

  • Windows 上 Studio 启动失败时弹窗说明原因,并在日志目录写下 shell.log 与 host.log(敏感参数已打码) (#11069 by @esengine)
  • Windows 安装包内的全部 exe 和 dll 都已签名,开启智能应用控制的电脑不再因未签名的组件拒绝启动 (#11080 by @esengine, #11091 by @esengine)
  • 重新打开会话后,已回答的提问仍可阅读 (#11078 by @esengine)
  • 写文件的工具调用返回后,资源管理器立即刷新 (#11068 by @esengine)
  • 只包含一个网址的行内代码可点击打开 (#11070 by @esengine)
  • PATH 缺少 %SystemRoot% 时也能打开主题文件夹 (#11084 by @esengine)
  • Anthropic 模型在结果增量里返回的网页搜索结果能正常显示 (#11087 by @esengine)
  • 在 Studio 里通过 ACP 输入的技能调用保持原样发送 (#11045 by @KHG420)
  • 无法归类的计划检查命令不再让自己永远等待下一次运行 (#11090 by @esengine)

升级须知

  • 使用 Web Studio 完整远程控制与桌面端在线提示,需要电脑上的 Reasonix Studio 升级到 2.20.4;旧版仍会显示为不支持完整桌面能力 (#11058 by @esengine)

贡献者

感谢本版本的贡献者:@esengine、@boscocp、@KHG420

What's Changed

  • feat(studio): add encrypted remote task messaging by @esengine in #11044
  • feat(readiness): hold plan criteria by their step's check, not a citation by @esengine in #11046
  • feat(trajectory): record the capability versions every run had by @esengine in #11049
  • fix(acp): preserve typed skill input in Studio turns by @KHG420 in #11045
  • feat(e2ebench): say whether two reports reproduce one version by @esengine in #11052
  • feat(studio): serve the full Studio UI over encrypted remote transport by @esengine in #11054
  • feat(e2ebench): decide whether a candidate capability set may be promoted by @esengine in #11055
  • fix(verdict): a turn that owed nothing and changed nothing is not done by @esengine in #11056
  • fix(tools): match an old_string whose blank-line run differs in length / 匹配空行数量不同的 old_string by @boscocp in #10946
  • feat(studio): show and control Web Studio sessions by @esengine in #11058
  • feat(contract): a plan that names files owes a proven change by @esengine in #11060
  • feat(provider): identify model requests as Reasonix/ by @esengine in #11063
  • fix(studio): refresh the explorer when a writing tool call returns by @esengine in #11068
  • perf(studio): overlap remote authorization with boot by @esengine in #11067
  • perf(studio): cache fingerprinted Web Studio assets by @esengine in #11071
  • fix(studio): open a code span that holds one web address as a link by @esengine in #11070
  • build(deps): bump the go group with 13 updates by @dependabot[bot] in #11034
  • fix(studio): do not duplicate replies after remote connect by @esengine in #11073
  • build(deps): bump the npm group in /desktop/frontend-next with 10 updates by @dependabot[bot] in #11040
  • build(deps-dev): bump the npm group in /desktop/electron with 2 updates by @dependabot[bot] in #11039
  • test(openai): pin the body-phase reset fixture to the body phase by @esengine in #11075
  • fix(studio): log shell and host startup, and say why a launch failed by @esengine in #11069
  • build(deps): bump the actions group with 6 updates by @dependabot[bot] in #11042
  • fix(tools): name a blank-line difference when old_string is not found by @esengine in #11064
  • fix(studio): keep an answered ask readable after a session is reopened by @esengine in #11078
  • fix(serve): open the theme folder when PATH lacks %SystemRoot% by @esengine in #11084
  • feat(acp): report context size and session cost with usage_update by @esengine in #11083
  • build(deps-dev): bump vitest from 4.1.11 to 5.0.1 in /desktop/frontend-next by @dependabot[bot] in #11041
  • feat(studio): add account-gated remote QR access by @esengine in #11081
  • fix(anthropic): surface web search results delivered in a result delta by @esengine in #11087
  • fix(studio): tolerate slow mobile relay handshakes by @esengine in #11088
  • ci(release-studio): sign and verify every PE file in the Windows tree by @esengine in #11080
  • fix(agent): a plan check the host cannot classify does not void itself by @esengine in #11090
  • ci(release-studio): publish only the Windows packages the signing jobs recorded by @esengine in #11091

Full Changelog: studio-v2.20.3...studio-v2.20.4


macOS 已用 Developer ID 签名并公证,打开时不需要清除隔离属性。Windows 的窗口、内核与安装器都经 Certum 代码签名证书做了 Authenticode 签名。Linux 从 .deb 安装。

三个平台都能自更新:Linux 走自己的包,Windows 运行下一个安装器,macOS 替换自身 bundle。

Don't miss a new DeepSeek-Reasonix release

NewReleases is sending notifications on new releases.