Repository navigation
fix(acp): 把以自定义 agent 接入的 Antigravity 纳入 Windows scratch 目录隔离 - #1139
Merged
xintaofei merged 2 commits intoNov 12, 2026
Merged
Conversation
…ravity unpacks_into_temp_on_windows only matched AgentType::Antigravity, so a custom agent launching the same PyInstaller agy_acp_server binary got no scratch dir: every killed launch left a _MEI* in the system temp root that nothing reclaims. Treat a Custom agent as Antigravity when its binary distribution has a windows-* platform whose launch entry file name is agy_acp_server(.exe). Co-Authored-By: Claude Opus 5.5 <[email protected]>
…s scratch isolation Align the unpacks_into_temp_on_windows doc with what is actually checked (the dir_entry Windows path when nested, else the cmd hydration took from the windows-* spec), and extend the custom-agent test to the dir_entry branch, a non-binary distribution sharing the name, and a missing id.
Collaborator
|
codeg work task |
xintaofei
added a commit
that referenced
this pull request
Nov 12, 2026
This release adds conversation moves between folders, clearer tracking of background work, and more convenient repository collaboration, while improving file search, memory usage and agent compatibility. ## New - **Move idle conversations that are not tied to a task between open folders**, individually or in bulk, with menu selection and folder search while keeping their history. - **Control the desktop Web Service from the status bar**, with its current status, start/stop controls and a new option to allow connections only from this computer. - **PR/MR lists show CI status, passing/total counts and approval reminders**, with direct access to check details and approval of GitHub workflows awaiting maintainer authorization. - **Agents can attach files and images when creating to-do tasks**, keeping reference material alongside the task instructions. ## Improved - **Track background tasks and sub-agents from the running count above the chat input**, including work that continues after a reply ends and delegated agents awaiting your response. - **Redesigned Session Details and message navigation** make it easier to find the running message, inspect sub-agents and review file changes. - **Codex sub-agent activities now appear as expandable timeline steps**, with task details, replies, errors and a shortcut to open the child conversation. - **Task completion comments can include an agent-drafted reply that you review and edit before publishing**, with an optional Codeg footer. - **File search uses less frontend memory and avoids repeatedly scanning the same workspace**, while keeping results current as files change in open projects. (#1116 by @kogekiplay) - **Updated Cursor to 2026.11.11-b912975, Kimi Code to 2.6.0, Qoder to 1.1.87, CodeBuddy to 2.183.0 and the ZCode bridge to 0.84.2.** ## Fixed - **Further reduced memory retained by very long tool output and closed HTML previews.** (#1132, #1137 by @kogekiplay) - **Codex MCP screenshots and image results display correctly in desktop and Web chat**, including after reopening a conversation. (#1134 by @PengXiaoyi) - **Kimi MCP authorization correctly shows the browser authorization link and reconnection status while waiting.** (#1133 by @Cuinnchen) - **Kimi Code 2.6.0 plan reviews no longer incorrectly appear as tool failures when you approve, dismiss or request changes**, both during the conversation and in its history. - **The ZCode bridge supports encrypted credentials used by ZCode 3.18+**, fixing related execution failures and improving handling of duplicate history messages and replies. - **Interactive question cards for agents such as DeepSeek Harness correctly display the question text and option descriptions**, fixing cases where only a short label appeared. (#1140 by @mvanhorn) - **Antigravity instances configured as custom agents correctly display interactive questions and preserve your selections in conversation history.** (#1127 by @ana52070) - **Questions that only accept preset choices, including applicable Antigravity and Pi questions, no longer offer an unsupported “Other” input**, preventing typed answers from being treated as cancellations. (#1131 by @ana52070) - **Custom Antigravity instances on Windows now include their startup temporary files in automatic cleanup**, reducing disk space buildup after repeated launches. (#1139 by @ana52070) - **Long content in dialogs such as the model picker no longer causes horizontal overflow or clips buttons.** - **Fixed an occasional cleanup error when an agent connection ends.** Thanks to @kogekiplay, @ana52070, @PengXiaoyi, @Cuinnchen and @mvanhorn for contributing to this release. ----------------------------- # 发布版本 0.43.0 这一版支持跨文件夹移动会话,让后台任务进度更清晰、仓库协作更方便,并改进文件搜索、内存占用和智能体兼容性。 ## 新增 - **支持将未绑定任务的空闲会话单独或批量移到其他已打开的文件夹**,可通过菜单选择或搜索目标文件夹,并保留历史记录。 - **桌面端状态栏新增 Web 服务入口**,可查看运行状态、快速启停,并支持将访问范围设为仅限本机。 - **PR/MR 列表直接显示检查状态、通过数与总数,并提示等待批准的工作流**,可点击查看检查详情或批准 GitHub 工作流运行。 - **智能体创建待办任务时可以附带文件和图片**,方便将参考资料与任务说明一起交给后续执行者。 ## 改进 - **输入框上方集中显示后台任务和子智能体的运行数量与详情**,回复结束后仍可跟踪未完成的工作,并提示等待你回应的委派任务。 - **重新设计会话详情与消息导航**,更方便定位正在执行的消息、查看子智能体和审阅文件改动。 - **Codex 子智能体活动统一展示为可展开的时间线步骤**,可查看任务、回复和错误,并直接打开子会话。 - **任务完成后回写到 Issue 或 PR 的评论支持由智能体起草、经你审阅修改后发布**,并可选择是否附带 Codeg 落款。 - **文件搜索减少前端内存占用和重复扫描**,并随已打开项目中的文件变化更新搜索结果。(#1116 by @kogekiplay) - **Cursor 更新至 2026.11.11-b912975,Kimi Code 更新至 2.6.0,Qoder 更新至 1.1.87,CodeBuddy 更新至 2.183.0,ZCode 桥接更新至 0.84.2。** ## 修复 - **进一步减少超长工具输出和已关闭 HTML 预览的内存占用。**(#1132、#1137 by @kogekiplay) - **Codex 的 MCP 截图和图片结果可在桌面端与 Web 端正常预览**,重新打开会话后也能正确显示。(#1134 by @PengXiaoyi) - **Kimi 等待 MCP 授权时会正确显示浏览器授权链接和重连状态。**(#1133 by @Cuinnchen) - **Kimi Code 2.6.0 中批准计划、关闭审批或要求修改后,不再误显示为工具执行失败**,实时对话和历史记录均能正确展示。 - **ZCode 桥接兼容 3.18 及更新版本的加密凭据**,修复相关执行失败,并改善历史消息和回复重复显示的问题。 - **DeepSeek Harness 等智能体的提问卡片能正确显示问题正文和选项说明**,修复只显示简短标题、缺少问题内容或选项解释的情况。(#1140 by @mvanhorn) - **以自定义智能体接入的 Antigravity 能正常显示交互式提问**,并在历史记录中保留你的选择。(#1127 by @ana52070) - **Antigravity、Pi 中仅支持预设选项的提问不再显示「其他」输入框**,避免手动输入的回答被误当作取消。(#1131 by @ana52070) - **Windows 上的自定义 Antigravity 实例会将启动临时文件纳入自动清理**,减少反复启动后的磁盘空间占用。(#1139 by @ana52070) - **模型选择等弹窗遇到较长内容时不再横向溢出或遮挡按钮。** - **修复智能体连接结束时偶发的清理异常。** 感谢 @kogekiplay、@ana52070、@PengXiaoyi、@Cuinnchen 和 @mvanhorn 为本次发布做出的贡献。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
背景
scratch_dir会给 Windows 上的 Antigravity(PyInstaller onefile)启动分配隔离的临时目录<root>/<pid>-<hex>。这样被kill_tree强制结束后留下的_MEI*能随会话结束或孤儿清理一并回收。但白名单
unpacks_into_temp_on_windows只匹配AgentType::Antigravity。用户以自定义 agent(AgentType::Custom)接入同一个 Antigravity 二进制时,不会被隔离,_MEI*会直接落在系统%TEMP%根目录且不会被回收。实测:3 天内积累了 105 个
_MEI*,每个约 131 MB,共约 13 GB(详见 #1126 中的讨论)。改动
只改了
src-tauri/src/acp/scratch_dir.rs:is_antigravity_server_cmd(cmd):去掉目录部分(兼容/和\),大小写不敏感,可带可不带.exe后缀,判断文件名是否等于agy_acp_server。unpacks_into_temp_on_windows对AgentType::Custom(id)的处理:通过custom_registry::get(id)取元数据;只有在二进制分发、带windows-*平台、并且 Windows 启动入口(优先取dir_entry.windows,否则取cmd)匹配时,才返回true。false,行为和之前一致。create的签名和调用方,也不新增环境变量。白名单仍然是按需列举,没有对所有自定义 agent 一律重定向 TMP,避免影响 [Bug] Windows:ACP 隔离把 TMP 指向一次性目录,导致 Git Bash 的 /tmp 悬空(bash.exe: warning: could not find /tmp) #1025 那类 Git Bash/tmp的场景。测试
matches_antigravity_server_cmd_names:覆盖带路径、大小写、无后缀等应该匹配的情况,以及agy_acp_server_real.exe、agy_acp_server.exe.bak、空字符串等不应匹配的情况。custom_antigravity_agent_is_isolated_on_windows:用hydrate_test_guard和hydrate注册两个自定义 agent,断言agy_acp_server.exe那个被隔离、goose.exe那个不被隔离。本地验证(Windows,MSVC):
cargo test --no-default-features --features server-bin --bin codeg-server --lib scratch_dir:22 passedcargo clippy --no-default-features --features server-bin --bin codeg-server --lib -- -D warnings:通过桌面模式的测试和 clippy 本地未跑,以 CI 为准。
🤖 Generated with Claude Code