Oossa

GitHub 将 Copilot 运行时迁至 Rust,启动时间大幅缩短

GitHub 用 Rust 重写了 Copilot CLI、应用和 SDK 的运行时,将启动时间从 5.25 秒缩短至 0.29 秒,并省去了约 100 MB 的 Node.js 内存开销。

作者: Oossa 发布日期: 1 分钟阅读

Fotis Fotopoulos · Unsplash

GitHub 已完成核心组件迁移:其 Copilot 命令行工具、桌面应用和 SDK 的核心部分,均从 TypeScript/Node.js 转为 Rust。这次重写替换了约 800,000 行生产代码,并借助 AI 生成的代码完成。运行时与客户端处于同一进程时,Copilot 客户端的启动时间从 5.25 秒降至 292 毫秒。

迁移如何完成

GitHub 采用了渐进式迁移方案:逐步将小块 TypeScript 代码替换为 Rust 版本,同时通过临时兼容层让两种语言能够交互。这样一来,在为期 14.5 周的迁移过程中,现有测试套件得以持续运行。迁移期间,GitHub 共发布了 128 个拉取请求和 135 个版本(35 个稳定版、100 个预发布版)。

对开发者意味着什么

新的 Rust 运行时可通过 C ABI 直接嵌入宿主应用,无需单独运行 Node.js 进程,从而省去约 100 MB 的内存占用。对于需要隔离的场景,仍可使用进程外模式。Copilot SDK 继续支持 TypeScript、Python、Go、.NET、Java,现在也支持 Rust。

为什么重要

对使用 Copilot 的开发者来说,启动更快意味着等待时间更短、工作流程更顺畅。内存占用降低,也让这款工具更适合资源有限的设备或 CI 流水线。运行时还能直接嵌入应用,为定制 IDE 扩展提供更紧密的集成方式。

这篇文章有帮助吗?
分享

继续阅读

Oossa · 新闻简报

一周 AI,讲明白

每周一,用通俗的语言讲清值得知道的新闻。免费,无垃圾邮件。