限时领|《AI 百问百答》专栏课+实体书(包邮)! 了解详情
写点什么

18 天光速打脸!OpenAI 刚夸 TypeScript 最合适,转头就用 Rust 重写 Codex CLI

  • 2025-06-04
    北京
  • 本文字数:2751 字

    阅读完需:约 9 分钟

大小:1.30M时长:07:35
18天光速打脸!OpenAI刚夸TypeScript最合适,转头就用Rust重写Codex CLI

整理 | 华卫


刚刚,OpenAI 正式对外推出了 AI 编码神器 Codex,其目前向 ChatGPT Plus 用户开放。据悉,Codex 在限定时段内提供宽松的使用额度,但在需求高峰期间,可能会对 Plus 用户设置速率限制,以确保其能广泛可用。



并且,现在 Codex 可以在任务执行过程中访问互联网了,用户可用其安装基础依赖项、运行需要外部资源的测试、升级或安装构建新功能所需的软件包等。互联网访问功能将向 ChatGPT Plus、Pro 和 Team 用户开放,之后也将支持企业版用户。不过,该功能日常默认处于关闭状态,在创建新环境或编辑现有环境时可随时启用。


“我们不再处于集成开发环境(IDE)时代了。我们进入了自主开发时代。”有网友激动地表示,“这是一个能自行搜索、安装、编码、测试、修复错误并发布的 AI。”此前 OpenAI 的 CEO Sam Altman 曾坚称,到今年年底,AI 模型将能够超越初级软件工程师。


值得一提的是,在发布推出 Codex 前,OpenAI 首先宣布了用 Rust 重写 AI 命令行编码工具 Codex CLI 的消息,称此举可提升性能和安全性并避免对 Node.js 的依赖。尽管这对部分用户而言, “可能令人沮丧或构成障碍”。


“最合适”编程语言改了两次,主导者刚入职一年


Codex 是一款实验性编码代理工具,既可以在 ChatGPT 的网页浏览器中运行,也能通过 Codex CLI 在本地运行。其采用基于聊天的用户界面,CLI 支持两种模式:交互式(通过 codex 命令前缀触发)和非交互式静默模式(可用于持续交付管道,如生成更新日志)。


据介绍,Codex CLI 可通过 WSL(适用于 Linux 的 Windows 子系统)在 MacOS、Linux 或 Windows 上运行。该工具专为习惯使用终端的开发者设计,他们既需要 ChatGPT 级别的推理能力,又希望拥有真正运行代码、操作文件和迭代开发的能力——且所有操作都在版本控制下进行。简而言之,它是理解并执行代码仓库的“聊天驱动型开发工具”,可充分发挥 o3、o4-mini 等模型强大的推理能力,且具有以下特性:


  • 零配置启动:只需提供 OpenAI API 密钥即可使用;

  • 全自动审批机制:默认禁用网络访问并启用目录沙箱,确保安全可靠  ;

  • 多模态交互:支持上传截图或图表以实现功能需求。


现在,Codex CLI 在 GitHub 上是完全开源的,当前已获 27.9k 个 Star。据发布者称,“Codex CLI 是一个仍在积极开发中的实验性项目,目前尚不稳定,可能存在漏洞、不完整的功能或会进行重大变更。我们正与社区公开共建该项目,并欢迎:错误报告、功能请求、拉取请求、积极反馈。”


项目链接:https://github.com/openai/codex


同时,我们注意到,当前 Codex CLI 项目中代码占比最高的是 Rust 语言。“我们一直在努力将 Codex CLI 重写为 Rust”,这一消息的来源是 OpenAI 工程师、Codex CLI 项目维护者 Fouad Matin 。



值得注意的是,Matin 加入 OpenAI 刚一年左右。在 Matin 的个人介绍页面显示,作为一名软件工程师和产品设计师,他目前在 OpenAI 从事安全工作。此前,他参与创立了 Indent、VotePlz 和 StrongIntro 三家科技公司,并曾在 Segment 领导产品和工程开发。



去年 6 月,当时还是 AI 安全公司 Indent 联合创始人和 CEO 的 Matin 在 X 和 Reddit 上宣布:"我们已经加入 OpenAI,致力于使 AGI 安全可靠!"彼时, OpenAI  刚解散了"超级对齐"团队,其安全问题再次成为焦点,因而决定重组安全团队。


而就在半个多月前,Matin 还在 Reddit 针对“为什么用 TypeScript 而不是 Python 编写 Codex CLI 工具”的问题时这样回复:TypeScript 是其非常熟悉且最适合 UI 的语言,即使该 UI 在终端中。当时,Matin 还没有明确表达“要更换语言重写”的计划,只表示,“在不久的将来,我们会有一个高性能的引擎,可以绑定不同的语言,这样人们就可以决定用自己喜欢的语言进行扩展。”



为何要用 Rust 重写?目标:尽可能高效


然而,几天前,Fouad Matin 突然在 GitHub 上透露,Codex CLI 的源代码原先主要是用 TypeScript 编写并在 Node.js 上运行,但其团队现在已经用 Rust 进行了完全重写。


“我们想使用最好的工具来完成这项工作。Codex CLI 配备了简洁的终端 UI,借助基于 React 的 ink 框架可以轻松实现快速开发和迭代,但该项目的核心是‘代理 ’工具,也就是在循环中调用模型。 ”



Matin 指出,尽管当前基于 React 和 TypeScript 的版本易于编写和交互,但其“目标是让软件组件尽可能高效” ,改用 Rust 能带来以下四个方面的关键改进:


  • 第一是零依赖安装。当前版本需 Node.js 22 或更高版本,这样的要求可能对部分用户构成障碍;

  • 其次是需要沙箱化。在 macOS 上,Codex CLI 的命令由 Apple Seatbelt(sandbox-exec)包装,在可配置的沙箱环境中运行;Linux 版默认未沙箱化,OpenAI 建议在容器中运行它。而在 Rust 版本,OpenAI 创造了一种对 Rust 命令进行沙盒处理的方法,在 macOS 上仍然沿用 sandbox-exec,Linux 则采用 Landlock(https://docs.kernel.org/userspace-api/landlock.html);

  • 第三是性能优化。无需运行时垃圾回收,内存需求更低;

  • 第四是能够使用现有的 Rust 实现 MCP(模型上下文协议)。Codex CLI 将同时支持作为 MCP 客户端和服务器。


不过,基于 Rust 的 Codex CLI 仍可通过 JavaScript、Python 等其他语言进行扩展,具体细节尚未公布。据 Matin 称,至少在 Codex CLI 的 Rust 版本达到“体验和功能对等”之前,其将继续并行开发原始 TypeScript 版本和修复 Bug。


Rust 重写浪潮又起


Rust 作为系统级语言,本质上比 Node.js 使用的 V8 JavaScript 引擎上运行的代码更高效。但相应的代价是,其开发难度更高,因此生产力可能低于 TypeScript 或 JavaScript。根据大多数调查,JavaScript 和 Python 是更加流行的编程语言,而 Rust 的知名度较低。


然而,当前 OpenAI 并非唯一看重 Rust 效率的组织。近期用 Rust 重写的浪潮又猛烈起来,尤其是在追求性能提升的工具领域。


5 月底,Vue.js 创始人尤雨溪(Evan You)发布了 Rolldown-Vite——Vite 本地开发服务器和构建工具的新版本。尤雨溪表示,Vite 目前底层使用 Rollup.js 打包工具,而用 Rust 实现的 Rolldown 替换后,“生产构建时间减少 3-16 倍,构建过程中的内存使用最多减少 100 倍”。


马斯克也对 Rust 青睐有加,前几天在推出消息传递工具 XChat 时,宣布其已用 Rust 完成技术重构,支持加密功能、消息自毁功能、音视频通话以及发送任何类型文件的能力。



上个月,AI 编码工具 Zed 用近 60 万行 Rust 代码重新将自己构建了一遍,并声称其做到了“目前市场上速度最快的 AI 代码编辑器”。此外,空间机载系统等安全关键领域正在持续进行应用 Rust 的研究。


参考链接:


https://devclass.com/2025/06/02/node-js-frustrating-and-inefficient-openai-rewrites-ai-coding-tool-in-rust/


https://github.com/openai/codex/discussions/1174


声明:本文为 InfoQ 整理,不代表平台观点,未经许可禁止转载。

2025-06-04 17:025760

评论

发布
暂无评论

怎么在国内进行tiktok海外直播?

Ogcloud

Tik Tok直播 Tik Tok直播网络 Tik Tok tiktok运营 tiktok直播

迁移方案详解 | 使用YMP从异构数据库迁移到YashanDB

YashanDB

数据迁移 yashandb 崖山数据库

大小单双彩票app平台

Geek_89ba7f

NineData和华为云在一起!

NineData

数据库 DevOps 华为云 NineData GuassDB

2024 Intersolar Europe,这家中国能源新秀再次瞩目!

科技汇

百度智能云升级3款大模型应用:面向三类场景打造企业“超级员工”

极客天地

“算启未来”,九章云极DataCanvas公司与您相约WAIC 2024

九章云极DataCanvas

Java实现管线拓扑关系连通性分析

不在线第一只蜗牛

Java 深度学习 优化

当程序员遇上PPT,会碰出什么火花?

秃头小帅oi

国内公司访问国外服务器网络解决方案

Ogcloud

SD-WAN 企业组网 SD-WAN组网 SD-WAN服务商 SDWAN

大小单双最安全的打法

Geek_89ba7f

交互式原型设计神器:Axure RP 9 for Mac/win版中文激活版

你的猪会飞吗

mac软件下载 苹果软件下载

GitHub星标破千Star!Python游戏编程的初学者指南

我再BUG界嘎嘎乱杀

Python 入门 开发语言 零基础 游戏编程

GPT-4o差点没及格!首个多任务长视频评测基准,它有亿点难

Openlab_cosmoplat

ChatGPT GPT-4 人工智能、

在 Go 语言中如何让结构体不可比较?

伤感汤姆布利柏

草莓不是莓,西瓜才是莓——解读 Kubernetes 中被驱逐的 Pod

小猿姐

Kubernetes 云原生

HDC 2024 | 华为云云原生开源+OpenHarmony,加速开发者应用创新

华为云开源

开发者 云原生 华为开发者大会 华为云开源

大发大小单双最安全的打法

Geek_89ba7f

大小单双走势规律口诀

Geek_89ba7f

完美解决 WebSocket 连接失败的技巧

Liam

程序员 后端 websocket

软件测试学习笔记丨JUnit5标记测试用例

测试人

软件测试 测试开发

百倍提升7B模型推理能力 昆仑万维携手新加坡南洋理工大学发布Q*算法

新消费日报

18天光速打脸!OpenAI刚夸TypeScript最合适,转头就用Rust重写Codex CLI_AI&大模型_华卫_InfoQ精选文章