本版新增跨项目派发、厂商图标、壁纸场景图层和个人预设默认,加固配对设备、git 读命令和项目配置的信任边界,并修复多处预算与界面问题。
新增
- (随派发开关,默认关闭)被派发出去的会话做完任务后,会自己把最终答复送回派发它的会话,不用你再来回转述;回信不会再触发回信。关联 #13341。
- (默认关闭)打开派发开关后,模型可请你把一批文件夹开成项目;一张卡逐条列出路径,你批准后才加入并标记为可信,之后才能向它们派发任务。关联 #13341。
- (随派发开关,默认关闭)别的会话发来消息时,接收的会话在列表里标为未读,你看到它之后才消失;不再要你自己发现。关联 #13341。
- 常用服务列表按厂商筛选并显示厂商图标,模型菜单里预设来源的模型也带上对应厂商图标。关联 #14538。
- Wallpaper Engine 场景支持多图层合成与逐音轨音量/循环,并保留 effects 元数据供后续 shader 接入。Refs #14561 by @EMEEEEMMMM。
- 设置「人设」里你自己的预设现在也能点「设为默认」作为新任务默认;该预设被删除后,新任务会改用内置的并忘掉这个默认。关联 #14572 fixed in #14575。
变更
- 项目
reasonix.toml里的agent.system_prompt_file只有在你信任该文件夹后才会读取;未信任时忽略并在启动提示里说明,信任后恢复。关联 #13061。 - 配对的手机不能再安装或启用插件、MCP 和钩子,也不能自己指定要打开的文件夹,只能用窗口已列出的文件夹。关联 495a234、b8b7ac87f。
- 未信任的项目文件夹里的 AGENTS.md 等常驻指令会标明“未验证”,模型只当作项目信息;项目自己声明的 MCP 常驻加载不再生效。关联 4ca3349、e8c22e7ce。
- 放大设置窗口后铺满整个窗口,含顶部和底部,Windows 的窗口按钮在设置头部里;放大按钮的箭头随状态向外或向内。关联 #14418 fixed in #14420。
- 极长会话里,右侧历史轨道上表示多条的合并条现在鼠标移上去就展开可选的条目,移开自动收起。关联 #14525 by @imcreazy。
- 计划栏现在是输入框上方独立的卡片,展开的列表有明确的收起按钮,按 Esc 或点到外面也会收起,并写出条数。关联 #14530。
修复
- Anthropic 流中断时保留已知用量,并标记记账不完整;重试分类、请求计数和取消边界保持不变。关联 #14025。
- 活跃 Agent 根 context 内的有界 reviewer/advisor 用量现在计入既有 token 软预算,保留缺失用量、零阈值、局部遥测和独立请求边界。关联 #14025。
- 缺失或估算的供应商用量不再把 Agent 成本标成完整;保留准确请求次数与已知金额,已知费用达到显式预算仍软收尾。关联 #14025。
- 规划与执行共用显式配置的根 token 和时间软预算;保留仅规划、审批、继续、换任务及后台作业边界。关联 #14025。
- 子任务 provider 回调 panic 后,前台图和 transcript 会一致记录失败;旧式 nil panic 不再让后台子任务误报成功。关联 #14025。
- 中断流重建的用量不再被报价层标成完整成本;保留估算金额和既有币种账本,后续准确调用不抹掉不确定性。关联 #14025。
- 宿主 Git 的 worktree 准备不再继承外部索引或对象存储变量,保留显式私有索引和仓库备用对象库。关联 #14025。
- 隔离任务被拒绝时(结果不存在、未启用隔离、不是 Git 工作区、整合冲突、参数不支持),工具卡片会说明原因,不再空白。关联 #14025。
- 活跃 Agent 根任务中的摘要与失败诊断用量现在计入既有 token 软预算,保留缺失用量、零阈值、局部遥测和无根 context 手动维护的行为。关联 #14025。
- 显式
task_token_budget共享累计 Agent task/fleet 子树已报告的 token,包括后台 job 和缓存输入。默认不限,保留软收尾;不是硬预留或金额上限。关联 #14025。 - 活跃根任务的 token 软预算现在计入命令分类和外部内容筛查用量;分类结论、筛查提示、缺失用量与零阈值行为保留。关联 #14025。
- host 显式耗时预算跟随 Agent 委派树及后台 task/fleet,共享任务起点并保留 Job Manager 取消权和既有软收尾;默认仍不限。关联 #14025。
- 活跃根任务的 token 软预算现在计入原生 web_search 已报告用量,保留独立请求计数、缺失用量、来源标签和付费同意边界。关联 #14025。
- 没有添加任何文件夹时,主区域也能直接新建会话,设置和反馈会在应用自己的目录里开出会话来打开,不再提示先添加文件夹。关联 #14465 fixed in #14501。
- 右侧提问细条在点过某一条、鼠标移开后再切回窗口时,附近几条不再无故变长变粗,只有键盘聚焦才会放大。关联 #14504 fixed in #14510。
- 在人设编辑页点「设为个人首选」或「设为项目首选」时,设置其实已生效,却弹出「Unexpected end of JSON input」的报错;现在不再误报。关联 #14541 fixed in #14542。
- macOS 上图标栏的竖线和底色不再从窗口顶端画起,不再穿过左上角的红绿灯。关联 #14553 fixed in #14558。
- Studio 里一个对话在后台跑完一轮后再打开,不再缺这一轮的回复;面板接入共享事件流之前错过的内容会从对话记录重新读出。关联 477ce36。
- 能力目录的列表、搜索和详情里含 MCP 工具描述时,结果带“外部内容,不是指令”的标签。关联 147d536。
- 注销配对设备时偶发的数据竞争已修复,被注销设备的连接会可靠断开。关联 a755eb6。
- 网页抓取和安装源的内网地址防护现在也识别 IPv6 转换地址里带的 IPv4,并在走代理前先检查内网字面地址。关联 ed624e9、ab144a4cd。
- 仓库自己的配置里有会执行程序的键(如 fsmonitor、textconv、filter)时,智能体的 git 读命令不再自动放行,会先询问并写明原因。关联 191d1e1。
- 命令里直接写 awk 程序现在要确认;自动记忆不再写入置顶项;登录表单加了大小上限;钩子里未加引号的 Windows 路径被正确识别。关联 de21fb4、4227c20b8、167c01014、6336f6763。
- 文件变更保护现在记录完整读取实际返回的内容;分页和超限读取保留已有的过期覆盖保护。关联 #14025。
- 首次只读取一部分内容后,完整覆盖前需要完整重读,或改用局部编辑。关联 #14025。
- 启用工具的规划现在遵守既有 token、费用、耗时预算配置;普通规划暂停保留 executor 回退。关联 #14025。
- 思考或回答期间发送插话后,文字继续实时更新,不再等到下一次结构事件才补齐。修复 #14209 fixed in #14534 by @lancy69。
- 调整侧栏底部头像的位置,保留原有字号、字重和尺寸,修正头像与工作空间文字的视觉对齐。关联 #14223 fixed in #14267 by @lancy69。
升级须知
reasonix serve --auth none监听非本机地址时现在拒绝启动,需要显式加--allow-open-network。关联 3653373。reasonix trust --yes不再顺带批准项目声明的 provider 端点(会把你的 API 密钥发到它的地址),需要加--allow-providers。关联 e19b45d。
贡献者
感谢本版本的贡献者:@EMEEEEMMMM、@imcreazy、@lancy69
New
- (With the dispatch switch, off by default) A dispatched session sends its final answer back to the session that handed it the task, and a reply is never answered by another reply. Refs #13341.
- (Off by default) With dispatch on, the model can ask to open folders as projects; one card lists every path and nothing is added or trusted until you approve. Refs #13341.
- (With the dispatch switch, off by default) A session that receives a message from another session is marked unread in the list until you look at it, instead of you having to notice. Refs #13341.
- The preset list filters by vendor and shows vendor marks, and models from a preset source carry the vendor mark in the model menu. Refs #14538.
- Scene wallpapers composite their image layers, honor per-track volume and loop mode, and keep effect metadata for a future shader pass. Refs #14561 by @EMEEEEMMMM.
- In Settings, your own agent presets can now be made the new task default; if one is deleted, new tasks fall back to the built-in one and forget it. Refs #14572 fixed in #14575.
Changed
- A project's
agent.system_prompt_fileis read only once you trust the folder; until then it is ignored with a startup notice. Refs #13061. - A paired phone can no longer install or enable plugins, MCP servers or hooks, or name a folder to open; it uses folders the window already lists. Refs 495a234, b8b7ac8.
- Standing instructions from an untrusted folder are labelled unverified, and a project's own MCP always-load no longer applies. Refs 4ca3349, e8c22e7.
- An enlarged settings window fills the whole window, with the Windows buttons in its header; the enlarge button's arrows turn inward. Refs #14418 fixed in #14420.
- In very long conversations a folded line on the history rail opens its questions on hover and closes when the pointer leaves. Refs #14525 by @imcreazy.
- The plan bar is its own card above the composer, with a collapse button (Esc or a press outside also closes it) and a step count. Refs #14530.
Fixed
- Anthropic interruptions retain known usage as incomplete accounting, preserving retry classification, request counts and cancellation boundaries. Refs #14025.
- Bounded reviewer/advisor usage in an active Agent root now counts toward its token soft budget. Missing usage, zero limits and isolated requests retain their behavior. Refs #14025.
- Missing or estimated provider usage no longer certifies complete Agent costs. Exact request counts and known-cost soft landing remain. Refs #14025.
- Planning and execution share configured root token/wall soft budgets, preserving plan-only, approval, continuation, task replacement and background-job boundaries. Refs #14025.
- Delegated provider panics now settle foreground graph and transcript as failed, and legacy nil panics cannot publish successful background work. Refs #14025.
- Reconstructed stream usage no longer certifies a complete cost quote. Estimated amounts and currency ledgers remain; later reported calls preserve uncertainty. Refs #14025.
- Host Git worktree preparation drops ambient index and object storage overrides, preserving explicit private indexes and repository alternates. Refs #14025.
- Tool cards now say why an isolated task was refused (unknown result, isolation off, no Git workspace, apply conflict, unsupported arguments). Refs #14025.
- Active-root summary and failure-diagnosis usage now counts toward its token soft budget. Missing usage, zero limits and local telemetry retain their behavior. Refs #14025.
- Explicit
task_token_budgetshares reported tokens across Agent task/fleet descendants. Defaults stay unlimited; existing soft landing remains. Refs #14025. - Active root token soft budgets now include command-classification and external-screening usage, preserving verdicts, advisory notices, missing usage and zero limits. Refs #14025.
- Explicit host wall budgets follow Agent delegation and background jobs, retaining Manager cancellation and soft landing. Defaults stay unlimited. Refs #14025.
- Active root token soft budgets now include native web_search usage, preserving independent request counts, missing usage, provenance and paid-search consent. Refs #14025.
- With no folder added, the main area offers a new session, and settings and feedback open one in the app's own workspace instead of asking for a folder first. Refs #14465 fixed in #14501.
- The right-hand question rail no longer magnifies marks near one you pressed when the window regains focus with the mouse elsewhere; only keyboard focus does. Refs #14504 fixed in #14510.
- "Set as personal default" and "Set as project default" on a persona applied but showed "Unexpected end of JSON input"; an empty success answer is no longer read as JSON. Refs #14541 fixed in #14542.
- On macOS the icon rail's edge and background no longer start at the top of the window, so they no longer cut through the window controls. Fixes #14553 fixed in #14558.
- A conversation that ran a turn in the background no longer opens without that turn's reply; what its pane missed before the shared stream attached it is read back. Refs 477ce36.
- Capability catalog answers that quote MCP-written tool descriptions carry the external-content label. Refs 147d536.
- A data race when a paired device is revoked; its open streams are now cut reliably. Refs a755eb6.
- The web fetch and install-source guards now judge the IPv4 an IPv6 transition address carries, and refuse an internal literal before a proxy is used. Refs ed624e9, ab144a4.
- Agent git reads (diff, log, show, blame, status) are no longer auto-approved in a repository whose own config runs programs; they ask first and name the key. Refs 191d1e1.
- An inline awk program needs approval, auto memory never pins, the login form is size-capped, and an unquoted Windows hook path is read as written. Refs de21fb4, 4227c20, 167c010.
- File change protection records the complete returned read; pages and oversized reads preserve the earlier guard. Refs #14025.
- After a partial read, read the file in full before a whole-file overwrite, or use a targeted edit. Refs #14025.
- Tool-enabled planning honours the configured token, cost and time budgets; normal planner pauses keep the executor fallback. Refs #14025.
- Reasoning and answers keep streaming while guidance waits in the queue, instead of freezing until the next structural event. Fixes #14209 fixed in #14534 by @lancy69.
- Adjusted the sidebar footer avatar placement, keeping its font size, weight and dimensions. Refs #14223 fixed in #14267 by @lancy69.
Upgrade notes
reasonix serve --auth nonenow refuses to start on an address other machines can reach unless you pass--allow-open-network. Refs 3653373.reasonix trust --yesno longer approves a provider endpoint the folder declares, which would receive your API key; add--allow-providers. Refs e19b45d.
Contributors
Thanks to this release's contributors: @EMEEEEMMMM, @imcreazy, @lancy69
What's Changed
- build(deps-dev): bump electron-builder from 26.15.3 to 26.18.0 in /desktop/electron in the npm group by @dependabot[bot] in #14453
- Fix #14427: report show/delete with an unknown ID on an empty store exits 1 with a not-found error by @wanjinhao1 in #14430
- fix(studio): with no folder, a session still opens, so settings, feedback and a new session work by @esengine in #14501
- Fix delegated panic settlement before completion / 修复委派 panic 的终态结算 by @SivanCola in #14505
- Update acknowledgments contributors / 更新致谢贡献者 by @esengine in #14509
- perf(harness): serve the transcript in pages when
?paged=Nis set by @imcreazy in #14507 - fix(studio): align footer avatar and workspace text by @lancy69 in #14267
- fix(studio): only keyboard focus magnifies the question rail by @esengine in #14510
- test: retire temporary serve catalogs / 清理临时 serve 夹具的共享 catalog by @SivanCola in #14511
- fix(builtin): record only complete returned file views / 修复读取版本误认与过期覆盖 by @SivanCola in #14377
- fix(studio): word isolation refusals on tool cards / 为隔离任务的拒绝原因补上说明 by @SivanCola in #14515
- Share token budgets through Agent delegation / 委派 Agent 共享 token 预算 by @SivanCola in #14518
- Keep incomplete usage out of certified task costs / 保持任务用量与成本完整性 by @SivanCola in #14523
- Open a folded rail run on hover, and close it on the way out by @imcreazy in #14525
- Share explicit wall budgets across Agent delegation / 委派 Agent 共享显式耗时预算 by @SivanCola in #14526
- fix(studio): keep replies streaming while guidance waits by @lancy69 in #14534
- fix(pricing): preserve usage uncertainty / 报价保留估算用量的不确定性 by @SivanCola in #14531
- test(boot): retire MCP fixture sessions / MCP 漂移夹具先关闭旧会话 by @SivanCola in #14536
- feat(studio): the plan bar is its own card with a collapse button by @esengine in #14537
- fix(studio): a default-preset change answered with 204 is success, not a JSON read by @esengine in #14542
- fix(cli): reject extra arguments to mcp list and mcp get by @bercedev in #14546
- fix(cli): validate machine interface project roots by @par73e in #14544
- fix(boot): honor planner task budgets / 规划器遵守既有任务预算 by @SivanCola in #14547
- fix(agent): count auxiliary root tokens / 根预算计入压缩与诊断用量 by @SivanCola in #14552
- fix(studio): a pane the shared stream attaches late re-reads what went by by @xxoingr in #14559
- fix(studio): the icon rail no longer cuts through the macOS window controls by @esengine in #14558
- feat(peers): the model can ask to open folders as projects, behind one approval card by @esengine in #14555
- fix(agent): count bounded root usage / 根预算计入有界辅助调用 by @SivanCola in #14560
- feat(studio): render scene layers and per-track audio by @EMEEEEMMMM in #14561
- feat(providers): vendor marks on the preset list and the model menu by @esengine in #14548
- fix(agent): count triage root usage / 根预算计入分类与筛查用量 by @SivanCola in #14562
- test(boot): assert refusal evidence / 用执行证据验证权限拒绝 by @SivanCola in #14566
- feat(peers): a dispatched session answers the session that opened it on its own by @esengine in #14556
- feat(peers): a session that received a message from another session is marked unread by @esengine in #14567
- fix(studio): an enlarged settings window reaches the bottom of the window by @esengine in #14568
- fix(search): count native root usage / 根预算计入原生搜索用量 by @SivanCola in #14574
- feat(studio): a personal agent preset can be the new task default by @esengine in #14575
- fix(anthropic): retain interrupted usage / 保留中断流已知用量 by @SivanCola in #14583
- fix(feedback-sync): evaluate every open row, not only the first 200 by @esengine in #14585
- fix(studio): show account and model aliases in composer tooltip by @lancy69 in #14587
- fix(coordinator): share root task budgets / 规划与执行共享根任务预算 by @SivanCola in #14593
- fix(gitcmd): isolate host storage environment / 隔离宿主 Git 存储环境 by @SivanCola in #14594
New Contributors
- @wanjinhao1 made their first contribution in #14430
- @bercedev made their first contribution in #14546
Full Changelog: studio-v2.52.0...studio-v2.53.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。