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

latest release: v2.49.0
4 hours ago

本版新增用量页“今日”小时视图和 Patina 主题,辅助会话支持 Markdown 与流式进度,改过文件的回合不再默认被追问检查,并修复多处内存、卡住和显示问题。

新增

  • 内置 Patina 主题,雾灰画布、白色浮卡与钢蓝强调色,明暗两套,需要时在设置里手动选择。关联 #14136 by @FuchaZ。
  • 用量页多了“今日”范围,单日窗口按小时显示用量、花费和请求。关联 #14176 by @EMEEEEMMMM。

变更

  • 改过文件的回合不再默认被要求先做检查、复核和签收才能结束;需要时在用户配置里设 host_verification = "on"。"交付"预设和 --fail-on-unverified 仍会要求。关联 #14154。
  • 隐藏图标栏时,侧栏不再有两个打开同一个“远程”设置页的入口;底部重复的“连接与机器”已移除,顶部“运行环境”仍可进入。关联 #14187。
  • 自动命名遇到关不掉思考的模型时,会明确提示“模型把输出额度花在思考上”,并建议换一个能关闭思考的命名模型。关联 #14188。
  • 隐藏图标栏时,侧栏搜索行与下面的快捷入口之间不再有多余空白;两处小字提示统一使用“·”分隔。关联 #14191。

修复

  • 配置了 TCP 方式的 DNS 服务器时,健康探测把正常应答的服务器误判为不可用,导致第一个服务器失效后不会切换到下一个。关联 #14044 by @imcreazy。
  • 只打开了远程会话窗格时,直接访问本机端口(不带窗格前缀)的请求没有应答,现在会转发给远端内核;本地窗格仍然优先。关联 #14045 by @imcreazy。
  • 注入的常驻上下文(技能清单、项目指令、规则、日期)不再因为「已交付」的书签而漏发。关联 #14099 by @chuiwenwei。
  • 扩展拒绝、取消、折叠、回退、截断之后,都会按模型真正看到的历史重新判断。关联 #14099 by @chuiwenwei。
  • 服务端新建会话(/new)的首个请求现在会带上技能清单、项目指令与日期。关联 #14099 by @chuiwenwei。
  • 用量页与 hero 的「实付」现在包含守护评审这些安全审查的花费(此前它们的 token 计入而钱没计入)。关联 #14110 by @chuiwenwei。
  • 用量总额现在把"只计了次数和 token、没有金额"的调用(旧版本写入的记录、标题生成)算作未定价,总额标成下限而不是账单。关联 #14112 by @chuiwenwei。
  • 标题生成的调用现在会按价目计价,不再只计 token 不计钱。关联 #14112 by @chuiwenwei。
  • 旧版 1.x 历史索引不再保留已回退或被覆盖的消息正文,降低启动时的内存压力。关联 #14116。
  • browser_act 的脚本等待一个永远不会结束的 Promise 时不再无限期卡住(有用户等了十分钟以上);30 秒后停止脚本,并告诉模型"脚本超时"。关联 #14118 fixed in #14143。
  • 最终回答后的工作区观察遇到阻塞 I/O 时,会话不再长时间显示运行中;停止操作会取消观察和证据封存的等待,未完成的观察记录为证据缺口。关联 #13953、#14140 by @SivanCola。
  • 上下文压缩超时或取消时,不再因摘要流同时关闭而误报成功或采用未完成的摘要。关联 #14144 by @SivanCola。
  • 从微信等应用复制文件粘贴到输入框时,文件会先复制成附件再发送,不再登记原路径,避免来源应用的缓存路径读不到而失败。关联 #14150 by @KHG420。
  • 辅助会话面板里的回答现在按 Markdown 显示,加粗、行内代码和列表不再露出原始符号。关联 #14157。
  • 辅助问题立即显示提问,流式显示回答文字、阶段和耗时;中断的回答标为未完成,输入保留可重试。关联 #14162 by @lancy69。
  • 输入 /mcp、/skills 时,补全只提供真正会执行的子命令;输入不认识的子命令会明确提示,而不是悄悄显示列表。关联 #14167。
  • 宿主发出的「本轮还有未完成事项」的续做提示不再被当成你发的话,不会再变成会话标题、预览或用户轮次。关联 #14170 by @imcreazy。
  • 设置里“模型可用的工具”不再显示英文原文;内置工具按界面语言给出一句话说明,被截断的说明也不再在词中间断开。关联 #14175。
  • 隐藏图标栏时,侧栏底部的“连接与机器”不再比其他入口更大更粗,和同类入口使用同一字号和字重。关联 #14184。

升级须知

  • 没有价目的行不再显示成 ¥0,而是把总额标为「未定价调用未计入」的下限。关联 #14110 by @chuiwenwei。
  • 超过 64 MiB 安全预算的记录、有效消息正文或 DAG 元数据会被拒绝;原文件保持不变,其他会话仍可索引。关联 #14116。
  • 没设过这一项的用户升级后,回合收尾前不再被追问"还欠什么";项目配置文件仍改不了这一项。关联 #14154。

贡献者

感谢本版本的贡献者:@FuchaZ、@EMEEEEMMMM、@imcreazy、@chuiwenwei、@SivanCola、@KHG420、@lancy69


This release adds an hourly Today view to Usage and a Patina theme, renders side-conversation answers as Markdown with streamed progress, stops asking for checks by default after a turn that changed files, and fixes several memory, hang and display problems.

New

  • A built-in Patina theme with a grey canvas, white cards and a steel-blue accent, in light and dark, chosen in Settings when you want it. Refs #14136 by @FuchaZ.
  • The Usage page has a Today range, and any one-day window shows usage, spend and requests by the hour. Refs #14176 by @EMEEEEMMMM.

Changed

  • A turn that changed files is no longer held open until a check, review and sign-off exist; set host_verification = "on" in your user config for that. Refs #14154.
  • With the icon rail hidden, the sidebar no longer has two entries to the same Remote settings page; the duplicate bottom row is gone and "Environments" still opens it. Refs #14187.
  • When a model that cannot turn thinking off spends its budget thinking, automatic naming now says so and suggests a naming model that can. Refs #14188.
  • With the icon rail hidden, the blank band between the sidebar's search row and the shortcut rows is gone, and both hints use the same "·" separator. Refs #14191.

Fixed

  • The DNS server health probe read a TCP reply as if it had no length prefix and reported a live server as dead, so failover to the next [network] server never happened. Refs #14044 by @imcreazy.
  • A request made straight to the port with no pane prefix got no answer while only a remote pane was open; it now goes to the far kernel, and a local pane still takes precedence. Refs #14045 by @imcreazy.
  • Injected standing context (skills listing, project instructions, rules, the date) can no longer be believed delivered when the model never got it. Refs #14099 by @chuiwenwei.
  • A refusal, cancel, fold, rewind or truncation now re-asks the model-visible history instead of a bookmark. Refs #14099 by @chuiwenwei.
  • A new session in the served app now starts with the skills listing, project instructions and the date. Refs #14099 by @chuiwenwei.
  • The usage page and hero paid total now include the guardian's safety reviews, whose tokens were counted but whose money was not. Refs #14110 by @chuiwenwei.
  • The usage total now treats a call that was counted but carries no amount (pre-schema rows, title generation) as unpriced, so the total is a floor rather than a bill. Refs #14112 by @chuiwenwei.
  • Title-generation calls are now priced from the rate card instead of counting tokens with no money. Refs #14112 by @chuiwenwei.
  • Legacy 1.x indexing retains payload locations, not discarded message bodies. Preflight no longer copies large strings. Refs #14116.
  • A browser_act script awaiting a promise that never settles no longer holds the call forever; after 30 seconds it is stopped and the model is told it timed out. Refs #14118 fixed in #14143.
  • Blocked workspace observation no longer holds a turn after its final answer; Stop cancels observation and seal waits, and incomplete observations remain gaps. Refs #13953, #14140 by @SivanCola.
  • Context compaction no longer reports success or accepts an unfinished digest when its summary stream closes at the same time as a timeout or cancellation. Refs #14144 by @SivanCola.
  • A file pasted from another application, such as WeChat, is now copied into an attachment instead of being registered by its original path, which could fail to read later. Refs #14150 by @KHG420.
  • Answers in the side conversation panel are now drawn as Markdown, so bold, inline code and lists no longer show raw markers. Refs #14157.
  • Side questions show your question immediately and stream the answer, phase and elapsed time; interrupted answers are marked incomplete and drafts stay available for retry. Refs #14162 by @lancy69.
  • /mcp and /skills completion now offers only the subcommands that run, and an unrecognised one is reported instead of silently printing the listing. Refs #14167.
  • The host's own "work still outstanding" prompt is no longer read back as something you typed, so it stops becoming a session title, a preview line or a user turn. Refs #14170 by @imcreazy.
  • The tool list in Settings no longer shows the model-facing English text; built-in tools get a one-line description in the interface language, and a long line is cut cleanly. Refs #14175.
  • With the icon rail hidden, the sidebar's "Connections & machines" row is no longer larger and bolder than the other shortcut rows; they share one size and weight. Refs #14184.

Upgrade notes

  • A row with no price no longer shows as zero; the total is marked as a floor with "unpriced calls not included". Refs #14110 by @chuiwenwei.
  • Records, retained payloads, and DAG metadata have separate 64 MiB budgets. Refusals preserve files, never use stale checkpoints, and leave healthy sources indexable. Refs #14116.
  • If you never set this key, the end-of-turn "still owes" prompts stop after upgrading; a project config cannot change it. Refs #14154.

Contributors

Thanks to this release's contributors: @FuchaZ, @EMEEEEMMMM, @imcreazy, @chuiwenwei, @SivanCola, @KHG420, @lancy69

What's Changed

  • fix(browser): stop an eval script whose promise never settles by @esengine in #14143
  • fix(agent): reject interrupted summaries at EOF / 修复压缩流结束与取消竞态 by @SivanCola in #14144
  • fix(stats): quote a guardian review's usage like any other call by @chuiwenwei in #14110
  • fix(control): derive projection delivery from the visible history by @chuiwenwei in #14099
  • feat(loopmetrics): read-only loop metrics for trajectories, with negative controls by @esengine in #14149
  • fix(agent): bound post-answer finalization / 修复回答结束后的收尾阻塞 by @SivanCola in #14140
  • feat(loopmetrics): phase 1 harness and first results on long-session conditions by @esengine in #14155
  • feat(loopmetrics): how to feed a real session, plus usage and M4 definition fixes by @esengine in #14158
  • fix(desktop): draw the side conversation's answer as markdown by @esengine in #14157
  • fix(studio): copy pasted files into managed attachments by @KHG420 in #14150
  • feat(config): the host no longer holds a changed turn to its checks unless asked by @esengine in #14154
  • test(memory): drop the wall-clock bound on uncontended saves by @esengine in #14165
  • fix(control): offer only the /mcp and /skills subcommands the controller runs by @esengine in #14167
  • fix(studio): stream progress for side questions by @lancy69 in #14162
  • fix(sessionstore): bound history replay memory by @lancy69 in #14161
  • fix(netdns): read a TCP reply past its length prefix by @imcreazy in #14044
  • fix(serve): carry an unprefixed request to a remote pane by @imcreazy in #14045
  • fix(desktop): describe each tool in the settings list in the interface language by @esengine in #14175
  • fix(control): keep the host's continuation prompt out of the user's turns by @imcreazy in #14170
  • fix(stats): count a call with no cost fact as incomplete by @chuiwenwei in #14112
  • test(sessionstore): count the bytes a redaction reads instead of process-wide allocation by @esengine in #14182
  • feat(theme): add Patina as a plain light/dark palette by @FuchaZ in #14136
  • fix(desktop): give the sidebar's shortcut rows one type scale when the icon rail is hidden by @esengine in #14184
  • ci(race): give the full-suite package timeout headroom over assembly/boot by @esengine in #14186
  • feat(usage): show hourly usage for a single-day window by @EMEEEEMMMM in #14176
  • fix(desktop): drop the sidebar's second link to the remote settings when the icon rail is hidden by @esengine in #14187
  • fix(serve): say when the title model spent its budget thinking by @esengine in #14188
  • fix(desktop): even out the sidebar's shortcut rows and use one hint separator by @esengine in #14191
  • docs(release): studio 2.49.0 notes by @esengine in #14193

New Contributors

Full Changelog: studio-v2.48.0...studio-v2.49.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。

Don't miss a new DeepSeek-Reasonix release

NewReleases is sending notifications on new releases.