亮點
- 一個工作台,同時驅動多個會話 — 會話組把同一工作區的會話綁成側欄一行和一塊分屏工作區,每個分屏都有自己的對話、輸入框和標籤。可以拖曳進出會話組、把標籤拖到分屏邊緣來分屏,摺疊的組行一眼就能看到成員狀態。
- MCP 與技能市場 — 在配置中心瀏覽並安裝 MCP 服務與技能。MCP 目錄在本地建立索引,搜尋即時且覆蓋整個登入庫,安裝也會送達每一個能承載它的 Agent。
- 可以點擊響應的通知 — 桌面通知改用 gpui 提供的系統通道,視窗在前台時不會打擾,點擊通知會把工作台喚回到發出通知的會話。
- 執行環境與裝置有名字,也能被管理 — 兩者預設取機器裝置名,兩側都能重新命名。回訪的手機會更新既有記錄,被撤銷的裝置無需重新配對即可恢復,列表還會顯示當前線上狀態。
- 託管 Agent 可以還原到 Vibex 驗證過的版本 — 只要條件允許,還原就會安裝目錄中固定的版本;DeepSeek Harness 0.4.33 也能與 0.4.32 並存。
- 更快、更安靜 — 四屏會話組不再讓工作台陷入重繪迴圈,檔案面板不再每幀探測所有已安裝編輯器,重複動畫限制在 30 fps。
- 移動端配對從相機開始 — 掃碼排在首位,手動輸入收成一個欄位,還能從相簿裡的截圖讀取二維碼。
新功能
會話組- 組行疊放組內不同的 Agent 頭像、顯示成員數量,並可展開到成員會話;選單提供對全部成員的自動繼續、置頂、重新命名、解散和連會話刪除(
6f3c8d7) - 會話組加入組織樹:可放進資料夾、排序、拖曳、持久化到
desktop-ui-state.json並通過遠端側欄協議同步;從其它工作樹拖入會以明確提示拒絕(6f3c8d7) - 摺疊的組報告成員中最有行動價值的狀態——需要輸入、執行中、錯誤、未讀完成——只有無狀態可報時才顯示成員數量(
ae3c1a4) - 開啟自動繼續的組由狀態環變綠表示,而不是在尾部列再畫一個使用者無法關閉的圖示(
4e78772) - 每個會話擁有完整的
SessionView——時間線、投影、滾動與測量狀態、執行環境選擇、流式記賬、展開狀態——借用會把整個檢視在儲存與渲染器之間移動,切換不會丟失、截斷或混淆檢視(9e8db4a) - 分屏渲染自己會話的時間線、Agent、模型級聯、自動繼續倒計時和檢出,並且在未聚焦時繼續接收流式更新(
c0e1161、9e8db4a、2aea6ce) - 從未聚焦過的成員會按權威條目抓取並停放一份時間線,使每個分屏都顯示完整對話;抓取失敗時保留摘要且不再重試(
32713a9) - 每個分屏渲染與主工作台相同的
render_composer,對應自己會話的文本框、草稿、附件、佇列、歷史、目標與計劃編輯以及終端介面(3f90ce3) - 只有聚焦分屏的輸入框可用;其它分屏為各自會話渲染同一介面,但變暗且不可互動,直到點擊該分屏(
02a6ea0) - 分屏標籤欄就是編輯器的標籤欄:可橫向滾動(含滾輪)、自動顯露選中項移動到的標籤,並可通過把標籤拖到相鄰標籤上重新排序(
a548784) - 會話可通過拖曳進出會話組:標籤拖到側欄即離開會話組,把拖動的會話放到組行或任一成員行即加入,放到其它任何地方即釋放(
a548784) - Shift/Ctrl 多選後會話選單提供「新建會話組 (N)」,組建會話組不再需要先進入批次模式(
a548784) - 標籤拖到分屏邊緣即按該軸分屏,包括停留在同一分屏內的拖曳;只有一個標籤的分屏也會分屏而不是拒絕,分屏還可以最大化(
a548784、3a0f711) - 組行的展開箭頭落在旁邊會話行的 Agent 標誌列上,頭像堆疊預留自己繪製的寬度,組右鍵選單在頂部顯示標題,「新增到會話組」改為子選單(
7d79054、731d722) - 右欄的活動按鈕可以拖動排序,拖動時有插入線,順序持久化在
right_rail.activity_order(c1b3a19) - 移動端仍把會話組成員作為普通會話行顯示,因為移動端還沒有組行(
6f3c8d7)
- 配置中心新增 MCP 與技能市場,可從各自的設定側欄進入:搜尋、按來源報告失敗、帶 Agent 選擇的安裝表單、MCP 環境變數,以及與實際寫入內容完全一致的技能文件預覽(
ee1aca1) - 目錄抓取置於公共網路邊界之後:僅允許無憑證 https、拒絕非公網地址、每一跳都重新校驗手動重定向、限制響應體大小並共用同一截止時間(
ee1aca1) - 市場通過中繼協議以 provider 請求暴露,使已配對裝置通過權威執行環境讀取和安裝,安裝同時繼承變更冪等與審計記錄(
ee1aca1) - 在後台執行緒按游標把 MCP 登入庫走成程序級索引,所有查詢在本地過濾;市場開啟期間索引會持續增長到數千條(
2234aab) - 搜尋同時匹配描述和釋出者而不只是名稱,響應報告已索引的目錄規模和匹配總數,使截斷的視窗不會被誤認為完整目錄(
2234aab) - 請求上限提高到超過實測最慢的一頁,並對掉頁重試,因為慢頁此前與故障無法區分(
2234aab) - 對映登入庫真正釋出的欄位——倉庫、釋出者、生命週期狀態、
updatedAt、isSecret——並按 npm、pypi、遠端包的順序優先選擇,oci 優先的記錄不再安裝成npx <image>(2234aab) - 修正啟動器引數順序,不再給
uvx傳它沒有的-y標誌(2234aab) - 通過每個所選 Agent 自己的通道投遞已安裝的 MCP 服務,為原生配置類 Agent 寫原生 MCP 檔案,對沒有通道的 Agent 帶診斷資訊跳過(
69216b2) - 兩個市場都改用套件的 Pagination 分頁,每頁十二張卡片,針對已抓取的視窗分頁,因為兩個上游都無法回答「顯示第 5 頁」;新搜尋回到第一頁,頁碼不存在時回落到最後一頁(
aef87d6) - 無查詢時也能填充技能市場:把空查詢或單字元查詢解析為寬泛的瀏覽查詢,並按安裝量重新排序(
2175224) - 每個市場唯讀一個固定上游——官方 MCP 登入庫和一個公共技能索引——因此刪除了目錄來源型別、來源管理器、內建精選目錄和自造的分類標籤(
b25f764) - 市場改為在區塊主體內渲染,MCP 與技能的建立操作上移到匯入之前,每個操作也各自佔用內聯面板,使資源列表始終是回到資源的路徑(
48665c1、4483a47、c3d5196、00c9877) - MCP 與技能管理頁改對齊 Agent 側欄的卡片、控制元件帶和字號體系:查詢與搜尋按鈕位於同一行更高控制元件上,傳輸篩選在其下方,搜尋按鈕在圖示位顯示套件進度,安裝表單的主頁連結移到標題行(
4bed0d5、18d4f6f) - 移除 MCP 與技能頁各自的原生匯出卡片,因為 MCP 服務已通過各自的通道送達每個啟用的 Agent(
35ef65d) - 落地管理滾動區域呼叫的
ScrollGuttertrait,並應用到工作台的滾動區域,使懸浮捲軸不再蓋住最後一列(4bed0d5、2e08866)
- 用 gpui 的
SystemNotification和App::show_system_notification取代各平台傳送器,並在啟動時註冊 Windows AppUserModelID 和 Linux 應用名(ea1952a) - 時間線通知按視窗焦點分流:視窗在前台時發應用內提示,否則發系統通知,並以會話 id 作為 tag 讓新通知覆蓋舊通知(
ea1952a) - 點擊系統通知會喚起或重建工作台視窗並選中發出通知的會話,會話已關閉或 tag 非法時靜默忽略(
78a8b44) - 按會話水位去重時間線通知,關閉或靜音時也推進水位,一次完成不再彈出兩個相同提示(
dd5c3a8) - 通過
gpui_ext::hint_notification讓輕提示的訊息可選中、可複製,拖曳釋放也不會誤觸點擊關閉(ebcc88b)
- 執行環境在
server_info中以server_display_name、在/api/v2/info中以serverDisplayName釋出自己的顯示名,預設取機器裝置名,並跟隨存放在新表runtime_identity(遷移 v56)中的運維重新命名(9432036) device_management新增rename_device與rename_runtime,兩者都要求mutate_device_management許可權、經normalize_remote_display_name校驗、寫入審計,並廣播裝置事件讓已連線客戶端無需重連即可應用新名字(9432036)- 裝置重新命名不動授權、授權修訂號和狀態,線上裝置無需重新配對(
9432036) - 每個客戶端只保留一條裝置記錄:手機每次配對都出示已儲存的裝置身份,既有記錄保留 id 和建立時間,新配對替換其授權和許可權級別,並提升授權修訂號(
6c55376) - 已配對裝置列表的每條記錄都新增刪除命令;刪除活躍記錄會先撤銷授權並斷開客戶端,兩種情況下都保留審計歷史(
6c55376) - 被撤銷的裝置授權可以恢復,保留憑證的手機無需重新配對即可連回,同時提升授權修訂號使撤銷前協商的一切不再被複用;只有已撤銷的記錄可以恢復(
35be91a) - 已配對裝置列表顯示當前線上狀態,直接讀取 Gateway 連線登入庫並在列表開啟期間短定時重新整理,而不再顯示可能自相矛盾的「最後線上」句子(
35be91a) - 桌面端執行環境管理器、已配對裝置列表和移動端主機列表都能重新命名執行環境與裝置,且都以執行環境為權威(
9432036)
- 把託管 Agent 還原到 Vibex 驗證過的目錄固定版本,該操作貫穿後端門面和遠端協議,並在之後重新探測執行環境選項,因為 Adapter 版本決定 Agent 公佈哪份模型目錄(
6d837e2) - 把
reject_semver_downgrade限定在通道安裝目標上,對二進位制歸檔或manual目錄條目以型別化能力錯誤拒絕,而不是寫入一個標籤錯誤的安裝(6d837e2) - 只在能完成時提供還原,該判斷由安裝狀態和目錄推導而來而非儲存(
6d837e2) - 通過投影裸 id、並把限定拼寫
route::model註冊為讀回別名,讓 DeepSeek Harness 的模型 id 在 0.4.32 與 0.4.33 上都能工作;已被其它模型佔用的別名仍會被拒絕(c68814b) - 把目錄的相容下限與固定版本拆開,只為 DeepSeek Harness 宣告 0.4.32,使已安裝的舊版執行環境保留憑證介面、模型行和
session/new(16d5681)
- 從 CC Switch 匯入 Grok Build 供應商:解析其
config.toml的[models].default與[model.<id>]表,把api_backend對映到 wire 協議、context_window對映到上下文 token 數,並把憑證遷移到配置宣告的env_key之下(12cb935) - 在匯入項上攜帶每個模型的宣告,使來源可以給出 wire 協議和顯示名,並接受 CC Switch 深鏈匯入寫出的不帶引號
[model.grok-4.5]拼寫(12cb935) - 原生匯入只對支援的 Agent 提供——claude、codex、gemini、hermes、opencode、pi 和 grok——其它 Agent 隱藏該操作(
5d10a23) - 明確匯入無結果的原因——CC Switch 缺失、該 Agent 沒有供應商、已全部匯入、或被解析錯誤阻塞——並給出帶 Agent 名稱的本地化訊息,而不是一個裸錯誤碼(
72a45b4) - 空匯入按資訊提示上報而不是錯誤彈窗,真正的解析失敗才保留錯誤碼(
b248628)
- 工作台欄按專案檢出或按會話分鍵,由新的「工作台」設定決定,切換時停放當前欄並接管目標欄;分鍵狀態覆蓋右欄的可見性、寬度和活動,編輯器面板的可見性與寬度,多標籤編輯器,以及整合面板的呈現;已載入的行仍保持共享(
c3527ca) - 多標籤編輯器佈局按會話記憶,停放的佈局持久化在
PreviewUiState.session_layouts中,按最新標籤設上限,全屏仍屬於面板狀態(cf080d6) - 多標籤介面統一稱為編輯器;關閉它改為摺疊面板並保留所有已開啟標籤,使編輯器回來時與離開時完全一致(
ab1580d、98c4654) - 右欄標誌按鈕切換編輯器,並統一讀取
preview_panel_open,使停靠標誌與窄視窗浮層不會互相矛盾(4abaae0) - 面板切換按鈕改用映象的側欄字形——標題列用
sidebar-left,右欄編輯器按鈕用sidebar-right——並以無字面填充的currentColor描邊打包(a64eec6) - 檔案樹可以定位巢狀檔案:沿父鏈逐級展開檔案樹已知的目錄,抓取第一個缺失的目錄,並從載入完成回撥重試直到檔案可被選中並滾動到可見位置(
0b4bc8f) - 檔案、差異和提交頭部以及每個提交檔案行都新增定位控制元件,可在右欄檔案樹中開啟該檔案;提交資訊正文預設摺疊(
98c4654) - 輸入框中的
/命令、@提及和$技能以圓角底片覆蓋在同一批字形上;換行的 token 按行高亮,滾出視口後不再繪製(57b020f) - 已結束的輸入請求保留問題與回答並渲染為可展開行:頭部顯示結果,摺疊正文保留問題和已記錄的回答,展開後顯示每個帶標籤的欄位(
c0ac5d7) - 點擊許可權等待提示可以跳轉到對應的許可權卡片,也可以把提示對當前待處理請求收起(
c4c5be3) - 已關閉的許可權提示跨重啟記憶,並按待處理請求集合作為鍵,後續請求會讓提示重新出現(
13a0537) - 全域性搜尋新增 Agents 分組,可開啟配置中心並定位到匹配的 Agent;非空查詢時該分組排在前面(
c261f6f) - 執行環境管理器與連線移動裝置對話方塊通過共享的幫助字形構建器連結到各自文件(
9d7a2c0)
- 外觀狀態新增
pauseInactiveAnimation,預設關閉,用來控制動效層的視窗失活暫停而不是無條件生效,並與「減少動態效果」並列暴露(2c72ee8) - 網路代理改為「跟隨系統」「直連」「自定義」三種模式,取代含義模糊的單一開關;只有自定義模式顯示地址、繞過列表和連線測試,並遷移模式出現之前持久化的狀態(
94f909a) - 網路代理行的說明改為描述它實際管轄的範圍——Agent 請求、Git 與終端命令、Agent 安裝和更新——而不再提 Vibex 並不具備的擴充套件市場和內建瀏覽器(
e79139e) - 對話方塊輸入框保持可編輯:裝置重新命名、終端重新命名、執行環境特性值和自定義 shell 都在
open_dialog之前建立輸入實體並在下一幀取焦,移動端主機重新命名面板開啟時取焦並喚起鍵盤(e069446)
- 配對頁以掃碼為主,其它入口收進「無法掃碼?」分組,手動輸入收成一個欄位且只在純配對碼時顯示伺服器地址(
af36fa4) - 支援解碼從相簿選擇的二維碼圖片,兩個宿主都新增本地網路被拒時的開啟設定橋接(
af36fa4) - 以手機自己的裝置名(Android
Build.MODEL)配對,而不再用通用產品名(9432036) - 主機列表渲染執行環境公佈的名字,在連線時和收到重新命名事件時更新(
9432036)
- 從「資料與診斷」把候選版資料匯入穩定通道:先暫存並校驗遷移後的快照,再替換任何線上檔案;替換髮生在下一次執行環境啟動、拿到 home 鎖之後(
687494c) - 穩定版首次啟動發現 home 旁有 RC 資料時只詢問一次,並記錄答案使提示不再出現(
687494c)
gpui-kit遷移到已釋出的 0.6.4,補上對應的gpui-base,並升級gpui-pre-mobile(c768bc9)- 採用新的套件 API:檔案搜尋框改為一個
InputGroup,用量圖表通過gpui-base取樣套件動效層,執行環境管理器新增新增對話方塊、逐行元資訊、泳道度量和錯誤條(c768bc9) - Git 狀態和提交詳情按檔案報告新增與刪除行數(
c768bc9) - 在 spec 中記錄 Git 路徑身份與 Windows
MAX_PATH契約,以及 DeepSeek Harness 的固定版本與相容下限、第二道憑證閘門契約(9a3a0e6、16d5681)
修復
桌面端——分屏與焦點- 焦點不再改變分屏顯示的內容:物化流程把即時檢視的會話視為可用,停放抓取到的檢視時不再替換既有檢視,並且每個分屏渲染相同的對話區域和輸入框(
9a390f4) - 把即時檢視停放在它自己的會話 id 下並顯式交回聚焦會話的檢視,使每個分屏保持在自己的對話上(
2a418bd) - 每個分屏的時間線元素按所屬會話生成 id,使分屏不再共用一份測量行佈局和一個視口(
3a0f711) - 預繪製階段的回合高度測量與借用檢視按會話路由,使測量落在擁有它的視圖裡,失去焦點的分屏保持自己的佈局(
b97cda4、2aea6ce) - 在滾輪監聽器中借用分屏自己的檢視並把該會話帶入恢復計時器,使滾動過的分屏不再被拉回底部(
ae9bd3d) - 同屏落點按區域解析,並按
pane_id過濾共享落點目標,使同一分屏內的拖曳可以分屏,而不是無操作或落到最後繪製的分屏上(3a0f711、4959240) - 每個分屏擁有自己的輸入框實體,並繫結到建立它的會話,不再讓整個工作區共用一個文本框(
02a6ea0) - 每個分屏的文本框儲存裁剪到會話組仍持有的會話,並刪除按分屏的文本框對映和會話草稿對映(
3f90ce3、304ee96) - 拖動多選會話時保持選擇完整:範圍可以跨越置頂區,載荷會補上兄弟順序不知道的已選行,且當順序中缺少起始行時拖曳不再拒絕啟動(
bdc20d2) - 由落點所在行決定拖放進入哪個會話組,並且拖放作用的會話來自當前選擇而不是構建該行時捕獲的載荷(
c8b4873) - 會話組的各個分屏可以從側欄到達:選中成員會移動該組的聚焦分屏及該分屏的活動標籤,最大化的會話組也跟隨選擇(
09f3c47) - 分屏焦點同時由選擇和會話組佈局推導,使恢復的佈局不會與選擇不一致(
09f3c47) - 未聚焦的分屏通過借用自身檢視完成行構建、單元構建和高度記錄,使它的時間線保持即時(
2aea6ce) - 非聚焦分屏不再阻止滑鼠按下事件冒泡,使它的標籤可以拖動(
3a0f711) - 單色 Agent 標誌改用側欄前景色繪製以跟隨主題,多色品牌標誌保留自帶顏色(
09f3c47) - 會話組的自動繼續由狀態環表達;工作樹行仍傳
false,因為它的會話可能不一致(4e78772)
- 把訊息體寬度限制在氣泡內容盒解析出的寬度內,使使用者氣泡最後一行換行內容不再被裁掉,並新增對比氣泡高度與同寬純文本元素的迴歸探針(
a4684c0) - 置頂會話的狀態標記保留在置頂標記左側的車道上,尾部列在每一行都讓位給懸停操作簇(
2c8ba9b) - 對話方塊構建器不再每次重繪都重建輸入實體,此前會替換使用者正在輸入的實體(
e069446) - MCP 與技能控制元件回到套件字號體系:搜尋框用 medium 尺寸、32px 高、14px 文字,側欄共用一條 32px 控制元件帶,市場標籤真正左對齊(
18d4f6f) - MCP 市場獲得參考稿的密度:卡片可縮到 260px,使網格能排兩到三列;地址膠囊以傳輸字形開頭,兩個市場標題都以各自的登入庫字形開頭(
18d4f6f) - 註冊 MCP 傳輸行請求的終端圖示,並打包
chevrons-left.svg與book-open.svg(96133bb、9e8db4a) - 把
ScrollGutter應用到工作台的滾動區域,使懸浮捲軸不再蓋住最後一列(2e08866)
- 會話恢復工作後清除過期的錯誤圓點:把本地待處理回合投影為執行中並覆蓋過期的
error快照,同時needs_input仍然優先;回合准入和完成現在都會發佈會話快照(555ae3b) - 待處理回合錨定到投影構建時刻而不是 Unix 紀元,此前會閃現「已工作 497217h 12m」的標題;並還原到借用檢視的會話,使全新會話保留樂觀的首條訊息(
f7ca797) - 輸入框的觸發 token 以文本內範圍高亮,使游標可以進入並像普通字元一樣編輯(
57b020f) - 摺疊的組行顯示最有行動價值的成員狀態,使用工作區行已有的優先順序(
ae3c1a4) - 組行與旁邊會話行的 Agent 標誌列對齊(
7d79054、09f3c47、731d722)
- 通過在本地索引目錄,修復 MCP 登入庫無法互動搜尋和只能取一頁的問題(
2234aab) - 技能市場無查詢時也能填充,不再在使用者輸入前一直空白(
2175224) - 已安裝的 MCP 服務投遞到每個能承載它的 Agent,並報告不能承載的 Agent(
69216b2) - 空匯入按提示上報,並說明沒有找到內容的原因(
b248628、72a45b4) - 市場按已抓取視窗分頁,搜尋改變結果集時重置或收斂頁碼(
aef87d6) - 刪除目錄來源管理器、內建精選目錄和自造分類標籤,使所有使用者搜尋同一批上游並面對同樣的失敗模式(
b25f764)
- 通過
repository_common_dir解析變更鎖路徑,而不再使用比較用的身份值——後者的 verbatim 字首會被CreateFileW以ERROR_INVALID_NAME拒絕,同一個被破壞的值也曾讓normalized_path發出的git -C呼叫失敗(9930556) - 歸一化前先剝離 Windows 名稱空間字首,修復了 Windows 上 32 個
vibex-git測試中的 19 個(9930556) - 讓測試臨時路徑和 Git 自身狀態檔案留在 Windows 260 字元預算內,並在測試倉庫中固定
core.autocrlf=false,使逐位元組斷言不會讀回 CRLF(953a3a3)
- 通過拆分相容下限與固定版本、並投影路由推匯出的憑證名,使 DeepSeek Harness 執行環境在固定版本升到 0.4.33 後仍然可用(
16d5681) - 通過為限定拼寫註冊讀回別名,使 DeepSeek Harness 模型 id 跨 Adapter 版本可用(
c68814b) - 所有 npm ACP Adapter 改用
spawn(process.execPath, [adapter, ...args])啟動,而不再在程序內匯入——後者讓process.argv[1]指向啟動器,靜默停用了只有呼叫自身入口檔案才會啟動的 CLI Adapter(f483d54) - 預解包內建的 DeepSeek Harness 執行環境,跳過符號連結條目並寫入
.dsh-acp-runtime標記,因為 Windows 在沒有開發者模式或提權時拒絕建立node_modules/.bin符號連結(f483d54) - 把 DeepSeek Harness 註冊為按回合計量的 Adapter 並提供按請求的
usage_update,使增長的讀數不再重複丟失上一回合的 token,縮小的讀數也不會被當成計數器重置(624f2e4) - 只有每個回合都報告了 API 請求數時才把聚合值標為「API 請求」,在此之前繼續標為回合數(
624f2e4) - 代理連線測試改在 Tokio 執行環境上執行,因為探測的第一次 DNS 或 socket 操作會 panic 掉 GPUI 工作執行緒並帶下工作台(
30a31a9) - 修復 DeepSeek 安裝清單測試中僅 Windows 出現的路徑分隔符斷言(
f483d54)
- 應用倉庫自身
check:rust門失敗的三處 rustfmt 改動,並把市場大小限制檢查中被 clippy 判為collapsible_if的巢狀if合併(8f1d0f8、72da172、73d143b、5fe4936、d49a915)
效能
- 每個會話組分屏在自己的
Entity::cached邊界後渲染SessionGroupPaneView,使一個分屏的動畫不再重建整個分屏樹,分屏內部發出的通知也只到達該分屏(e6f690a) - 通過向會話查詢回合是否仍在進行,阻止 Agent 思考微光在被打斷的回合之後繼續存在——此前它會讓持有該會話的每個分屏持續重繪(
e6f690a) - 輸入框的自動繼續同步改由改變其輸入的事件驅動,而不是渲染路徑,並且每個修訂每個退避視窗只發起一次探測:四屏會話組中每幀探測重入從 111 次降到 0 次(
e545edc) - 分屏以非稱重方式借用檢視,並由工作區統一走一次稱重釋放;執行環境目錄改為共享,級聯 memo 按不同選擇設界(
e545edc) - 預繪製高度測量按會話路由,已快取的會話檢視只稱重一次,不再每幀重建行尺寸表(
b97cda4) - 外部編輯器探測按程序快取並由後台執行器預熱,因為檔案面板頭部此前每幀都要探測 PATH ×
PATHEXT× 16 個編輯器——Windows 上每次約 4600 次檔案系統查詢、約 60 ms(3a0cd61) - 本地 Spinner、啟動 wordmark 微光和移動端配對漸變限制為 30 fps,側欄載入不再驅動整窗重繪(
06223cb) - npm 生成的
.cmd/.batNode shim 直接用process.execPath啟動,在 Windows 上每個 ACP 會話省去一個cmd.exe及其控制台宿主(06223cb) - 只有新的外觀設定要求時才在視窗失活時暫停工作台的重複動畫,後台工作台預設不再被凍結(
06223cb、2c72ee8) - 會話檢視和會話組載入的鍵改為借用查詢,不再每幀為每個成員分配一個自有鍵;
system_locale返回&'static str,不再在每次strings()呼叫時克隆快取字串(b97cda4)
內部、建置與文件
- 第一方圖示包從 191 個檔案增至 194 個:面板切換用的
sidebar-left.svg和sidebar-right.svg,以及分屏標籤選單用的chevrons-left.svg,三者都是 Lucide 的 ISC 路徑,並連同來源、數量和樹摘要登記進許可證策略(a64eec6、a548784、9e8db4a) - 版本號統一升到
0.1.0-rc.6,覆蓋工作區、打包輸入、Android 版本還原值、README 與部署文件、原生內容包預期,以及許可證策略中已稽核的第一方資源包版本 - spec 更新:視窗失活時的渲染暫停記錄為可選的外觀偏好(
be6e01b),Git 路徑身份與 WindowsMAX_PATH契約(9a3a0e6),非同步探測的執行器邊界(30a31a9),以及 DeepSeek Harness 的固定版本與相容下限、第二道憑證閘門契約(16d5681) - 新增或擴充套件的測試覆蓋:會話組分屏檢視與焦點路由、分屏與拖曳落點解析、置頂區選擇範圍、會話組拖曳載荷、MCP 市場索引與分頁、原生 MCP 投遞分類、CC Switch Grok Build 解析器、已配對裝置身份與線上狀態、執行環境重新命名協議、管理器還原門控、氣泡高度與實測文本元素的對比、配置中心導航渲染出的膠囊標籤、可選中提示文本、代理模式遷移、已結束輸入請求的展開行、工作台分鍵切換與按會話的編輯器佈局(
2232f70、a4684c0、bdc20d2、c8b4873、e545edc、b97cda4、69216b2、12cb935、6c55376、35be91a、9432036、6d837e2、ebcc88b、94f909a、c0ac5d7、c3527ca、cf080d6、e069446) - 依賴遷移到已釋出的
gpui-kit0.6.4 及對應的gpui-base,並升級gpui-pre-mobile(c768bc9)