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

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

Oossa · 2026-10-09 · https://oossa.com/zh/github-moves-copilot-runtime-to-rust-cutting-startup-time

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。

## 事实

- GitHub 将 800,000 多行生产代码从 TypeScript/Node.js 重写为 Rust。
- 迁移耗时约 14.5 周，共涉及 128 个拉取请求。
- 客户端启动时间从 5.25 秒缩短至 292 毫秒。
- Rust 运行时可为每个客户端省去约 100 MB 的工作集内存。
- 截至 2026 年 8 月 21 日，Rust 代码库包含 832,378 行生产代码和 468,689 行单元测试代码。

## 为什么重要

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

## 来源与参考

1. [Github Migrates Copilot Runtime to Rust with AI-Assisted Rewrite](https://www.infoq.com/news/2026/10/github-copilot-rust-migration/?utm_campaign=infoq_content&utm_source=infoq&utm_medium=feed&utm_term=AI%2C+ML+%26+Data+Engineering) – InfoQ, 2026-10-09

最后更新: 2026-10-09
