Microsoft/GitHub 用 Copilot 代理把運行時改寫成 Rust:八十萬行、約十二萬美元 token,吞吐最高提升近十六倍

Key takeaway

The Register 於九月十八日報道,GitHub 已把驅動 Copilot CLI、應用與 SDK 的代理運行時,由 TypeScript/Node.js/V8 全面改寫為逾八十萬行正式 Rust,主要靠 Copilot 代理完成,約消耗一千三百六十三億 token、模型費用約十二萬美元,另加約三週一名工程師時間。官方 GitHub Blog(九月十六日,微軟傑出工程師 Stephen Toub)披露:原約四十三萬行 TypeScript 經一百二十八個 PR、十四點五週原地漸進移植,進程內生命週期延遲可降至約二百九十二毫秒,同負載記憶體峰值約降九成一。來源真實性已對照 GitHub 官方博文與 The Register 報道核實。

Microsoft/GitHub 用 Copilot 代理把運行時改寫成 Rust:八十萬行、約十二萬美元 token,吞吐最高提升近十六倍

重點摘要

The Register 於九月十八日報道,GitHub 已把驅動 Copilot CLI、應用與 SDK 的代理運行時,由 TypeScript/Node.js/V8 全面改寫為逾八十萬行正式 Rust,主要靠 Copilot 代理完成,約消耗一千三百六十三億 token、模型費用約十二萬美元,另加約三週一名工程師時間。官方 GitHub Blog(九月十六日,微軟傑出工程師 Stephen Toub)披露:原約四十三萬行 TypeScript 經一百二十八個 PR、十四點五週原地漸進移植,進程內生命週期延遲可降至約二百九十二毫秒,同負載記憶體峰值約降九成一。來源真實性已對照 GitHub 官方博文與 The Register 報道核實。


GitHub 與微軟在企業與開發者工具鏈的佈局中,把「代理運行時」從單一 CLI 引擎,擴成可嵌入 VS Code、Visual Studio、Excel、Outlook、PowerPoint 以至 Copilot Studio 的共用核心。九月十六日 GitHub Blog 公開這次遷移細節,九月十八日 The Register 再以「代理式移植、十二萬美元」作標題放大業界關注。本文已核對官方數字與技術主張,來源真實性已驗證;下文拆解事件機制、技術原理、日常應用與香港視角。

一、核心事件:把共用代理引擎從 Node 棧換成原生 Rust

技術細節

據 Stephen Toub 在 GitHub Blog 所述,GitHub Copilot CLI、Copilot app 與 Copilot SDK 背後共用同一套 agent runtime。早期為求速度,整棧以 TypeScript 寫在 Node.js 與 V8 之上,CLI 的終端介面(TUI)與運行時耦合較深;當需要 SDK 時,務實做法是讓外部程式透過 JSON-RPC 啟動無頭 CLI 子進程,等於每個客戶端都要再起一個 Node/V8,工作集動輒約一百 MB,啟動、吞吐與伺服器密度都受限。

遷移目標並非「所有 TypeScript 都該變 Rust」,而是滿足:與 TUI 分層、低依賴與低開銷、可進程內嵌入、可經 C ABI 供六種語言 SDK(C#、TypeScript、Python、Rust、Go、Java)以 FFI 呼叫,並改善供應鏈與正確性建構的安全姿態。團隊選擇原地、組件級原子替換(in-place atomic replacement):每個 PR 用薄 shim 把呼叫轉到 Rust 並刪除舊 TypeScript,主分支持續可發佈。約十四點五週內,main 發出一百三十五次發佈(含一百次預發、三十五次穩定),平均每日約一點三個移植 PR。至八月二十一日,生產運行時達百分之百 Rust:八十三萬二千三百七十八行生產 Rust、四十六萬八千六百八十九行 Rust 單元測試,另加十七萬四千六百七十五行 TypeScript E2E 測試。

成本與規模方面:估計約四十三萬行生產 TypeScript 經過移植;代理寫出逾八十萬行生產 Rust。Toub 統計其移植相關 session 約消耗一千三百六十三億 token(其中約一千三百零六億為快取讀取),歸因模型費用約十二萬美元;若按 PR 佔比粗估,約相當於三週一名開發者全職投入。The Register 報道亦寫出「數十個回歸」——編譯通過並不代表行為正確,團隊仍須以 E2E、漸進發佈與人工把關收斂。

二、技術原理深度解析

1. 為何舊架構在「嵌入式代理」場景失效

CLI 作為終端應用,Node/V8 的啟動與記憶體尚可接受;但當 Excel、Outlook 或雲端服務每個 CopilotClient.start() 都再 spawn 一個 CLI,就等於強制雙進程監督、跨進程序列化,以及為本不需要 JS 的宿主再付一整個語言運行時。共用運行時本是為了「修一處、處處生效」,卻被錯誤的進程邊界抵銷了密度優勢。

2. 臨時互操作與永久 SDK 表面

移植期間,仍在 TypeScript 的呼叫端與已移植的 Rust 之間,以 napi-rs 做臨時雙向橋:Rust 函式可被 JS 呼叫,Rust 亦可透過 threadsafe function 回呼仍在 TS 側的模型層、hooks 或權限決策。內部 N-API 匯出一度高峰達二千零十九個、TypeScript 呼叫點三千三百五十六處;完成時臨時內部互操作歸零。永久對外則保留兩扇門:napi(Node 原生附加元件)與僅約十九個匯出函式的 C ABI——後者仍以 JSON-RPC 位元組承載數百條路由,讓六種語言 SDK 把「進程內」當成可選傳輸,而非重寫整套綁定。

3. 代理真實在做什麼:讀遠多於寫

Session 日誌顯示,代理花在閱讀、搜尋與診斷的時間遠高於改碼;檔案讀取/搜尋相對編輯約十倍。子代理多用於平行探索,主代理較常負責整合突變。快取命中率約百分之九十六點二二,使長時間自主 session 的經濟性成立。編譯錯誤以名稱解析、缺方法/欄位、型別不符與 trait bound 為主(約佔有碼診斷八成四),真正的借用/生命週期錯誤佔比很低——說明靜態型別回饋迴路對批量翻譯極有用,但「編譯即正確」仍是玩笑:已知回歸都曾成功編譯並合入 main

4. 效能:行為保留移植下的數量級改善

官方以 C# SDK、本機固定假模型伺服器(刻意剔除推理與網路延遲)比較移植前後。單客戶端「建立—一輪—拆除」:五月十二日基線五點二五秒;八月二十一日進程外一點三三秒(約四倍)、進程內二百九十二毫秒(約十八倍)。一千次單輪 session 生命週期:基線一百三十二點五二秒(約七點五五次/秒);Rust 進程外約五十七點四五次/秒、進程內一百二十次/秒(該負載約十五點九倍)。十客戶端批次私有記憶體增量:基線峰值約一千三百八十三 MB;Rust 進程外約二百四十七 MB、進程內約一百二十六 MB(約降九成一)。Toub 強調這是「翻譯優先、重構其次」的基線,尚未做大規模演算法重設。

四、日常應用場景

1. 開發者與技術團隊

對已嵌入 Copilot SDK 的產品團隊,進程內 C ABI 意味著可去掉 Node/V8 依賴與第二進程監督,把代理循環當原生函式庫用。對香港與亞洲外包/產品公司而言,這示範了「代理可負擔的大型遷移」:前提是足夠的 E2E 神諭、漸進發佈與明確目標(百分之百原生二進位,而非只搬熱路徑)。

2. 企業與隱私敏感行業

銀行、律所、醫療若要在內網託管代理執行層,原生、可預測記憶體與較低供應鏈表面,比「每個工作階段再起一個 Node」更易通過資安與容量規劃。微軟產品線(Office、VS)共用同一引擎,也意味著企業治理應把「代理運行時」視為共用關鍵基礎設施,而非單一 IDE 外掛。

3. 一般用戶

一般 ChatGPT/Copilot 使用者未必察覺底層換語言;可感差異更多落在啟動速度、穩定度與未來能否在更多裝置/嵌入式場景跑代理。回歸與編譯通過≠行為正確的教訓,則提醒使用者:自動遷移後仍需真實使用與測試把關。

4. 香港與亞洲市場視角

香港金融與專業服務機構正評估私有 LLM、程式碼助理與內部代理。GitHub 這次公開的成本結構(約十二萬美元 token + 約三週工程師)提供可對照的量級:大型重寫不再必然是「一隊人兩年」,但前提是流程、測試與人類仲裁仍在。對本地團隊,可借鏡「翻譯先、重構後」與「保護測試神諭不被代理擅自改弱」——這比盲目追求全自動重寫更務實。

五、專業評價與潛在考量

優勢

  • 官方博文數據完整:行數、PR、發佈節奏、token、快取、基準測試與回歸分類均公開,可驗證性高。
  • 架構目標清晰:嵌入、密度、C ABI 互操作,而非為 Rust 而 Rust。
  • 漸進原地移植降低「大爆炸切換」風險,並以真實流量發現回歸。

需要留意的地方

  • 數十個已知回歸說明代理擅長機械翻譯與編譯迴圈,但不自動保住語義契約、生命週期與宿主隱性假設(時區、Windows 無主控台旗標、空字串 ||unwrap_or 差異等)。
  • 宏觀結構仍多為「穿上 Rust 語法的 TypeScript 演算法」;效能紅利尚有第二波重構空間,亦代表技術債形態改變而非消失。
  • 十二萬美元是歸因模型費,未含全團隊支援、CI、審核與機會成本;外推到其他程式庫時不可直接照抄。

結語

GitHub 用自家 Copilot 代理,把共用代理運行時從 TypeScript/Node 棧遷到逾八十萬行生產 Rust,並以約十二萬美元 token 與約三週主導工程時間,換來進程內延遲與記憶體數量級改善。對企業而言,重點不在「Rust 神話」,而在:明確終態、保護 E2E 神諭、漸進發佈、人類負責架構與合入。若香港機構希望在可控數據邊界下部署類似代理與私有模型能力,可參考 YSK Limited 的企業私有 LLM 全託管(年費 HK$88,000 起,Dataset → QLoRA/LoRA → 私有 API,100% 數據不出境):https://ysk.hk/services/ai-automation


參考來源

  1. Stephen Toub, GitHub Blog, “Migrating the GitHub Copilot runtime to Rust, using Copilot” (2026-09-16): https://github.blog/ai-and-ml/generative-ai/migrating-the-github-copilot-runtime-to-rust-using-copilot/
  2. The Register, “Microsoft agentically ports Copilot runtime to Rust for $120K” (2026-09-18): https://www.theregister.com/devops/2026/09/18/microsoft-agentically-ports-copilot-runtime-to-rust-for-120k/5297549
  3. X 發現(The Register): https://x.com/TheRegister/status/2101057017309966751

Related services & products