BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース もう一つのRust書き換え:OpenAIのCodex CLIをネイティブ化、NodeとTypeScriptをRustで再構築

もう一つのRust書き換え:OpenAIのCodex CLIをネイティブ化、NodeとTypeScriptをRustで再構築

原文リンク(2025-06-04)

OpenAIは最近、Codex CLIをRustで再構築することを発表した。Codex CLIスタックはもともとReact、TypeScript、Nodeを特徴として持っている。この再構築は、開発者エクスペリエンスの向上に加えて、セキュリティとパフォーマンスの向上を実現することを目的としている。

発表では、再構築の動機を次のように説明している。

私たちの目標は、ソフトウェアの各部分を可能な限り効率的にすることです。そして、いくつかの改善したい領域がありました。

  • 依存性ゼロのインストール — 現在、Node.js v22以上が必要ですが、これは一部のユーザーにとって煩わしく、あるいは障害となっています。
  • ネイティブセキュリティバインディング — 驚きです!バインディングが利用可能になった当初から、Rust for Linuxサンドボックスは既に提供しています。
  • 最適化されたパフォーマンス — ランタイムガベージコレクションが不要なため、メモリ消費量を削減できます。
  • 拡張可能なプロトコル — Codex CLIのための「ワイヤープロトコル」に取り組んでおり、開発者が異なる言語(Type/JavaScript、Pythonなど)やMCP(Rustですでにサポート)でエージェントを拡張可能にしています。

Rustは、パフォーマンス、メモリ使用量、信頼性、リソース消費を設計目標として優先するシステム言語である。Rustの豊富な型システムと所有権モデルは、メモリ安全性とスレッド安全性を保証し、コンパイル時に多くのバグを排除する。欠点として、マイクロソフト(ガベージコレクションを必要としない新しい開発にRustの使用を義務付けた)は、開発者が初期の学習曲線が急であり、いくつかの非安定化されたRust機能に依存していると報告している。現時点では詳細はないが、JavaScriptやPythonのような大規模な開発者基盤を持つ言語でCodex CLIを拡張できることは、コミュニティの貢献にとって重要である。

Codex CLIのRust版は現在開発中である。チームは、Rust版が体験と機能の面で同等になるまで、元のTypeScript版の脆弱性を修正するために並行して作業を続けている。開発者は次のようにして新しいバージョンを試せる。

npm i -g @openai/codex@native codex 

ネイティブコンパイル言語への書き替えは一般的であり、特にパフォーマンス向上を求めるツールにおいて顕著である。マイクロソフト自身も最近、TypeScriptコンパイラをGo言語に移植し、10倍のパフォーマンス向上を発表した。また、宇宙船搭載システムなどの安全性が重要な環境でRustを使用するための研究も進行中である。

OpenAIの言葉を借りれば、Codexは多くのタスクを並行して実行できるクラウドベースのソフトウェアエンジニアリングエージェントである。Codexは、機能の作成、コードベースに関する質問への回答、バグの修正、レビューのためのプルリクエストの提案などのタスクを、それぞれ独自のサンドボックス環境で実行できる。

Codex CLIはGitHubでオープンソースであり、MacOS、Linux、またはWSL(Windows Subsystem for Linux)経由でWindows上で動作する。

作者について

この記事に星をつける

おすすめ度
スタイル

特集コンテンツ一覧

BT