Zedエディタ開発秘話とRust採用による高速化の実態

Rustで書かれたエディタ、Zed誕生の裏話とスピード狂騒

Zedコードエディタって、なんか妙に話題になってるんだけど。あ、知ってる?ElectronやAtomの開発者だったNathan Soboが立ち上げたものなんだよね。へぇ…って思いながら調べてみたら、これRust言語で構築されてて、その基盤アーキテクチャもかなり攻めてるというか…。マルチコアCPU、それにGPUアクセラレーションにも最適化されている設計らしい。ま、最近そういう方向ばっかだけど。

従来型のエディタとは全然違う匂いを感じたのは、「GPUI」っていう独自のグラフィカルインターフェースフレームワーク使ってる点かな。えっと、この「GPUI」、3Dゲームっぽいレンダリング手法でウィンドウ全体をGPU経由で直接ラスタライズする仕組み…なんだとか。うーん、自分でも説明しきれてない気がするけど、とにかく描画とか滑らかさが半端じゃない(と一部ユーザーには言われている)。あ、もちろん起動速度も速いし入力への応答性も良いと評判。ただ、自分はまだそこまで実感できてなくて…まあ、人それぞれ?

AI機能については、Zedはけっこう早い時期からAPI連携したりOllamaなどツール活用してローカルAIモデル対応を進めたみたい。それから2023-08にはエディタレベルで統合された「Zed AIサービス」がリリースされて、この辺Cursorとも似通った部分あるよね、と指摘されたこともある。でも正直なところ、本当に同じなのかなぁと思いつつ…。いや、ごちゃごちゃ考えてても仕方ないし、とりあえず今後どう進化するか見守るしかないよね。

AI機能?GPU直接描画?GPUIとは一体なんなのか

あの時、選ばれていたモデルはAnthropic Claude 3.5 Sonnetだった。…まあ、そのことを最初に知ったとき、正直ちょっと「名前長いな」と思ったんだけど。でもね、とにかくユーザーとしてはログイン後すぐ無料トライアルが使えたから、それだけで気分は悪くない。Zed AI自体は2つの主な要素があってさ、うーん……説明するとちょっと込み入るんだけど、一つ目はいわゆるアシスタントパネル。これがまた技術者向けというか、低レイヤー感が強め。
テキストエディタとLLMを直接繋げて即応的に対話できる設計なんだよね。しかも会話履歴とかコード断片、それにファイル内容まで全部プレーンテキストで並ぶから、慣れ親しんだツールを使って観察も編集も改善もできちゃう。それでもやっぱり最初は戸惑いが拭えなくて…いや、自分の話じゃなく他の開発者たちの反応見ててもそう感じた。でもふと思えば、この仕組みこそ現場っぽさ満載なんだよね。

もうひとつ——これが案外便利で驚いたんだけど——インライン変換機能というものもある。Control + Enterキー押せば起動して、そのまま自然言語プロンプトでコードを変換・生成できる仕組みになっているらしい。この辺り、「本当にそんな簡単?」と疑いつつ試してみた人、多かった印象。ただZed側曰く、このツール最大の特色は「精度および応答速度」らしくて、「迅速なフィードバックを提供するために独自CRDTベースバッファ連携カスタムストリーミングdiffプロトコル実装済み」という説明だった(途中やや読みにくかった記憶)。
だからどうなるかと言えば……モデル出力による編集内容がストリーム形式ですぐ反映される。その都度一文字ごとの出力トークン観察可能なのも新鮮だった。「変更進行状況その場で追えることで対応もしやすい」、そう思った瞬間、不意に雑念挟みそうになるけど戻ろう。この低遅延ストリーミングのお陰で全体的になめらかなインタラクション性あるコーディング体験になっていて、作業中ずっと主体的操作感覚保ちやすい――そんな声もちょこちょこ聞こえてきた。

ところで2024-02にはZedから新しい「Edit Prediction」機能まで公開されたんだよね。いやほんとう、新機能追加ペース早すぎでは?息切れしそうになるけど、それでも関心持たざるを得ない自分がいる…。

Comparison Table:
特徴ZedCursorWindsurf
主な強みAI対応のオープンソース製品で、単なるVS Codeのフォークではない開発者体験の再定義を目指したエディタで、初めから「AIコードエディタ」として市場投入されたマイクロソフト基盤上に多層的なAI機能を積み重ねている
開発アプローチ従来のアルゴリズム思考と堅実なエンジニアリングに注力し、基礎部分が揺るぎなく固まった時のみLLMを活用する予定早期からAI技術を取り入れた設計で、速やかな資金調達に成功した従来型用途向けに構築され、本質的制約が存在する可能性がある
ユーザー評価パフォーマンスとマルチバッファリングによる高いユーザー満足度。特にデバッグ時も快適との声あり"すべてがそのまま動く"というシンプルさと反応性の良さが魅力との意見あり"高度なプラグインエコシステムに頼っている開発者には物足りない可能性あり
未来展望5年後の立場・状況を重視し、長期的なビジョンを持つ短期的成功だけでなく、市場内での競争力維持にも焦点次世代AI統合への適応能力が問われる

AI機能?GPU直接描画?GPUIとは一体なんなのか

Claude 3.5 Sonnetとの出会いと謎多きアシスタントパネル

スクラッチからのトレーニング、つまりゼロからAIを作る感じではなくて、うーん…既存のオープンソースモデルを土台にしてファインチューニングがなされているってわけ。ま、それ自体はCopilotとかでも前からあったし、「標準的」な機能として受け止められてる気もする。でも、Zedにはちょっと違う配慮がある。えっと、例えば開発者がコード書きに没頭してる時にAIがやたら積極的すぎて邪魔になる——まあありがちだけど——そこを防ぐために「サブタイルモード(控えめモード)」なるものが追加されたんだよね。……これ最初聞いたとき「そんなこと本当に必要?」って思ったけど、実際使うと意外とありがたかったりする。で、本題戻すね。

今週、ZedはAgentic Editingという新機能をリリースした。なんか名前だけ聞くとピンとこないかもだけど、中核となる部分はAI自身にコードを書かせたりテストさせたりできる一方で——いや待って、自動化しすぎるのもちょっと不安だよね?——開発者自身の参加やコントロール感覚は常に保たれるようになっている。それでいてAIエージェントによる修正プロセスもリアルタイム追跡可能だし、時間食いそうな処理もバックグラウンドで走らせておいて終われば通知を受け取れる仕様になっている。不思議な安心感。

しかも修正後はZed独自のMultibufferメカニズムのおかげで全AI変更内容が統合されたインターフェイス上できれいに提示されて、開発者側ではそれぞれ順番に確認・調整できちゃう。そしてIDEレベルの機能サポートもしっかり温存されている。本筋逸れるけど、最近こういう気配り設計増えてない? ま、とりあえず話戻す。

あと、新しいAI関連機能についても例によって他部分同様ちゃんとオープンソース化されていて、新設されたAgent Panel経由ならバックグラウンドで動作中の詳細まで誰でも覗けちゃう仕組み。一瞬「本当に全部見える?」と思ったけど、一応公式ではそう言い切っているみたい。

### **完全なオープンソース化―プロンプトも含む**

2024年からついにZedエディター自体が正式なオープンソースになった。その範囲…いや正直業界内でもかなり珍しいくらい幅広くて驚いた記憶ある。コアエディターは**GPLライセンス**だし、バックエンドコンポーネントは**AGPL**採用、高性能カスタムUIフレームワーク**GPUI**にはなんと**Apache 2.0**ライセンス適用。この手厚さ…いやもう微妙に過剰サービス感あるくらい徹底してる。

さらに新しく導入された_エージェンティックプログラミング_系機能、その中心となる**プロンプト設計ロジック(prompt engineering logic)**まで公開対象なのだから驚き。「全部さらして大丈夫?」とか余計な心配したくなるくらい徹底していて、その内容にも直接アクセス可能になっている。まあ…情報過多で消化不良起こしそうだけど、ともあれ透明性への執着ぶりはかなり本気らしい。

ストリーミング・ディフがもたらす低遅延編集体験の断片

共同創業者のNathan Soboによれば、この「呪文みたいな」システムプロンプトは、彼自身とパートナーが手ずから作ったものだそうだ。まあ…そう聞くと何となく親近感が湧くけど、実際どうなんだろうね。「面白いことに、私たちはこれらのルールをオープンソース化しました ― つまり、このシステムプロンプトは私たち自身が“リーク”したものです。なぜなら、私たちはオープンであることを重視しているからです。」と本人も語っていた。ああ、こんな風に公然と言われると逆に怪しく感じたりもするけど、それでもZedのコアエディタ機能自体は今や全ユーザーに無料開放されている。それなのにAIサービスだけは現実的なコストがかかるせいで、有料サブスクリプション方式になっちゃってるんだよね。

それでもチーム側は無料枠もちゃんと用意していて、「各開発者が月50回までAIプロンプト呼び出し可能」という制限つきではあるけれど、一応無料プランでも十分試せる仕組みになっている気がする。ただ…この辺りでふと思い出したけど、自分も以前API制限でイラッとしたことあったっけ。ま、とりあえず本題へ戻ろう。最近ローンチされたProプランでは、ユーザーは月額$20で500回分利用できるようになるらしい。

先日のインタビューでSobo氏本人も言及していた。「もちろん、ご自身でAPIキーを設定したり他のソリューションを使ったり — あるいは私たちのコードをフォークして完全にカスタマイズすることも妨げません」と述べていて…まあ技術的な囲い込みには興味ないとも話していたかな。自分自身のテックスタックを好きに操れる自由こそ大事だという雰囲気だった。でも利便性とか“工場出荷状態”みたいな無難さを求めるなら、そのままサブスクリプション(月額$20など)がおすすめですよ、と柔らかく付け加えていたっぽい。

そして最後になるけど、Zedの採用するオープンソースライセンスにも「オープンネス」の考え方が色濃く反映されている印象だった。「Zed のGPLライセンスによって、このプロジェクト全体をクローズドソース派生物へと容易にフォークすることが難しくなります。もしZed上で何か構築したい場合は、“オープン”として保つ必要があります」とSobo氏。また、「フォークそのものも積極的には推奨したいつもりじゃなく、そのためGPLライセンスという選択肢になりました ― システム全体をごそっとコピーされないよう一応配慮しています」と補足説明まで添えていた。うーん、そこまで明文化しなくてもいいんじゃ?とも思う瞬間あるけれど、本筋として彼ら流儀の透明性や独特な距離感には少し惹かれてしまうわけだった。

ストリーミング・ディフがもたらす低遅延編集体験の断片

細やかな配慮:サブトルモード誕生の影にある開発者心理

Zedチームって、まあ毎回のように「全部オープンソースだよ」って言うんだけど――AI関連の機能も当然含まれてる。でさ、多くの製品と違って、Zedは最初っからゼロから全部作ったんだよね。何というか…「ハードコア」という道を敢えて選んだらしい。だからAIについてはちょっとだけ、いや結構かな、遅いスタートになった部分がある。でもまあ、その既存のプラットフォーム使えば楽だったろうな、とSobo氏も言ってた。「うーん、それでも私たちはAI以外にも基盤全体を維持してる」とか呟いてて。

あれ、この話どこ行くんだっけ…。ああ、そうそう。でもこの選択肢のおかげでZedには逆にデカい可能性が開いた感じ? Sobo氏曰く、「エディタースタック全体を深く所有し管理することで、ごく独自の機会が生まれると思う」と。なんだろうな…独自性とか一貫性とか?実際、AIとの統合も根本的に違うやり方で進められるし、その結果としてプロダクトそのものがより意味深長になったり特徴的になったり――特に今みたいにAIへの関心が高まってる時代ならなおさら。

えっと、それと最後にSobo氏がぽつり。「Agent Panelのリリースによって、この道を選んだ価値を示せていればと思う」。ま、いいか。やっぱ遠回りも悪くない気がした今日このごろ。

エージェンティック編集、マルチバッファ…全部公開済みって本当?

それなのに、ZedがAIプログラミング競争で「すでに機会を逃した」なんて本当なのか、業界の中では未だに議論が続いている。ああ、Cursorっていうエディタも2022年に設立されてるんだけど、Zedと同じように「開発者体験の再定義」なんて壮大な目標を掲げていた。しかも最初から堂々と「AIコードエディタ」だってアピールしてたし――ま、ちょっと羨ましい部分もある。でもね、2023年には最初のバージョンがリリースされて資金調達もうまくいったから、一気にAIネイティブエディタの代表格みたいな扱いになった。
けど、その頃Zedはどうだったかというと…いや、ちゃんと開発パラダイムの変化について理解は示してたんだよ。うーん、それでもやっぱりエディタ自体の完成度を上げることに集中してたっぽい。ホームページを見ても、「The editor for what's next」とか書いてあって、「AI」への言及はサブヘッディングの端っこに小さく載せられてるだけで…。なんだろう、この抑制された姿勢?慎重すぎると言えばそうなるのかな。でも結局Agentic機能が導入されるまで、その雰囲気はずっと変わらなかったような…。

さて、ZedがCursorやWindsurfみたいなライバルと比べて「AIエディタの波」に取り残されたのか、といった論争について話を戻そう。共同創業者であるNathan Soboは全然違う考え方みたい。「遅れたとは思ってない」って断言するし、「私たちは皆早く到着したと思う」と強調までしているんだから。不思議だよね。まあ彼のスタンスとしてはZedはAIそのものじゃなく、それよりも幅広いビジョン――つまりソフトウェア開発体験全体を作り直すこと――そこから始めたかったらしい。「単なるAIエディタ」という枠には収まらず、本質的には“より良き”開発環境を目指したかった…そんなニュアンスかな。それで後からAI技術が伸びてきただけという流れだったとか。でもちょっと脱線するけど、本当に最初から将来性ばかり追い求めるツール群づくりに心血注いできた感じだよね。

Soboによれば今やZedのコードベースには約600,000行ものRustコードが含まれているそうで、それもほぼ全部チームメンバー自身が手作業で書き上げたとのこと。「ほぼすべて」、この一言重いな…最近ではコア開発者もなお積極的にプロジェクトへ関与し続けている、と聞いた時も妙な感慨があった。実際どうなんだろう、自分なら途中で諦めちゃいそうなのに。それでも彼らは淡々と道を進む――こういう姿勢、案外好きかもしれない。

エージェンティック編集、マルチバッファ…全部公開済みって本当?

GPL?AGPL?Apache2.0?ライセンス選択の舞台裏で起きていたこと

彼は、Zedが「初めて真にAIネイティブなエディタ」になる可能性――その核心は基盤層への深いコントロールだと考えている。まあ、そう聞くと大げさかもしれないが…。一方で、「AIコードエディタ」として市場投入されている競合製品の中には、大規模なチームが従来型の用途向けに開発し、_プレAI時代_ のアーキテクチャ上に構築されたものもあるらしい。こうした以前のアーキテクチャについては、次世代AI統合の要求に適応する際、本質的な制約が存在する可能性が指摘されている。うーん、技術の進化って追いつくだけでもやっとだよね。

Sobo氏曰く、現代のソフトウェア開発――特にウェブ開発――って複雑さや予測困難性、それから「ブラックボックス化」した挙動ばかり増していて、まるで粘土とかガムテープで支えられたトランプの家みたいなんだとか。ま、それ言われると笑っちゃうけど…。いや、自分でも前から薄々思っていた気もする。でも今ほどそれが露骨になったことって、たぶんないよね、と彼も語っていた。そしてAI登場によって、そのスタックにはさらに混沌というスパイスまで加わった。

ああ、それで思い出したけど…もしシステム自体がすでに信頼性を欠いていれば、その上にゴールデンレトリバーみたいなLLM(つまり本質的に予測困難な要素)を載せることで危険度はもっと高まるという話もある。まったく怖い話だけどね。でもここからまた本題へ戻ろう。

Zed創設時から掲げてきた目標として、このようなアーキテクチャ上の混乱を抜け出し、とにかく基本となるコンポーネントを_正しく_作り込むこと、それらを_丁寧に_構築して、高精度なアルゴリズム層を設計し、それをより大きなシステム基盤とすることだったと言うんだ。「私たちチームは常にアルゴリズミック思考や堅実なエンジニアリング姿勢を重視してきました。決定論的動作へのこだわりとも言えるほどで、“伝統的アルゴリズムエンジン”並みに完全信頼できるシステム構築を目指しています」。 えっと…彼曰く _"その基礎部分が揺るぎなく固まったときだけ"_ LLM(大規模言語モデル)が役割を果たすべきだ、と断言していた。

ちなみにZedによるAI機能提供について「遅かったか」という問いには、「私が気にしているのは5年後、自分たちがどんな立場・状況になっているかという点です」とSobo氏は強調した。本音なのか皮肉なのか…いや、多分両方なんじゃないかな。

「遅いAIが正解」論争と、実は土台にこだわり続けてた理由

## **02 Zedの魅力と成長過程:「純粋なスピード感」**

Zedって、最近また急激に進化し続けてる。うーん、この「進化中」という曖昧な感じも個人的には嫌いじゃない。開発者間での人気?いや、無視できるレベルじゃ全然なくて、実際そこそこの存在感を放っている気がする。Composioのエンジニア・Siddharth Balyan氏はこう言ってた。「実は1年以上前からZedを追いかけてました」。なんだろう、自分でも気になるツールってなぜか調べ続けたりするよね。でも、以前はよく使っていたものの、もっと優れたエージェント機能持ちのエディタが出現して、一度CursorやWindsurfに浮気したらしい。浮気…というと変だけど。

まあ、それでも「再びZedベータ版への招待を受けると、すぐ戻りました」と彼は語ったわけで…。あっ、自分だったらどうだろう、と一瞬考えてしまった(ま、その話は今はいいか)。Balyan氏によれば、一部作業――特にデバッグ時にはVS Codeフォークも使い続けてるとか。「私は友人にもZedを勧めています。それ、本当に高速だし動作滑らかですし、VS Codeフォークみたいな冗長さも感じません」とコメントしている。ああ、「本当に」みたいな強調表現、多用しちゃう癖あるんだよね…反省。

それからMac上で大きめファイル編集する際にはCursorでは重かったことが何度かある一方で、不思議とZedではそういう問題がほぼ生じなかった、と指摘していた。そのへん自分もちょっと興味あるかな。しかしあともうひとつ大事なのがさ、「インターネット接続なしでもローカルモデル利用可能」だったり、「MCP拡張機能不要でClaude Code連携できちゃう」ところも評価高めとのこと。ただまあ、不安定要素ゼロとは言えないと思うし…ってまた脱線した。

X(旧Twitter)上でも誰かこんな風につぶやいてた。「正直言ってまだZed試したことないなら一度触れてみても良いと思います」。なんとなくわかる、その手探り感。他にも「機能性」「ミニマリズム」「高速性」「ビジュアル面」、それぞれ多方面で印象的とも述べられている。それからもしVS Codeに集中力あるプロダクトマネージャーがいたら、このレベルまで到達できた可能性もあったでしょう――なんて皮肉っぽく締め括ってた。……まあ、人それぞれだけどさ、本筋戻すなら確実に注目されてるプロダクトなんだよね。

「遅いAIが正解」論争と、実は土台にこだわり続けてた理由

速さだけじゃない…Zed愛用者たちのリアルな叫びと悩みごと

一方で、Redditの開発者が「Zedがまだ対応していないエッジケースやニッチなプラグイン要件を除けば、VS Codeを使い続ける理由は思い浮かばない」と語ったらしい。ふうん、そう言われても自分はつい昔の習慣に戻りたくなることもあるし…でもまあ、それはさておき。このコメント、なんだか潔さすら感じる。

また別の開発者によれば、Zedの主な特徴としてパフォーマンスとマルチバッファリング、それからネイティブVimモード、この3点を挙げていた。そもそも最近よく話題になるけど、「本当にそんなに違うの?」って疑いたくなる時もあって。でも多分、本気で切り替える人にはそれだけ理由があるんだろうね。

一部ユーザーがZedへ移行した背景にはシンプルさとか速度への渇望みたいなものが感じられる。ああ、自分もたまに複雑すぎる設定画面を見ると投げ出したくなるので、その気持ちわからなくもない。ただ、一瞬余計なこと考えちゃったけど戻るね。

Pinata社Developer Relations責任者Steven Simkins氏はNeovimからZedへ移行し、自身のブログ記事で「今のところ、Zedでもっとも印象的なのは『すべてがそのまま動く』ということです」と記しているんだとか。正直、「全部そのまま」って言葉、不安になるくらい響きがいいよね。でも現実はいつもちょっと違うような…。

彼は内蔵Vimモードや反応性に優れたUI、それに統合されたLanguage Server Protocol(LSP)などを大きな魅力として挙げていた。San Francisco Compute Company所属エンジニアGerred Dillon氏もまた、「Zedは自分のお気に入りの技術ツール」だと率直に語っている様子。しかしまあ、人それぞれ好き嫌いあるし…。いや、ごめん、ごちゃごちゃ言わず本筋へ戻ろう。

彼のワークフローではこのAIエディタがより本格的な作業台として機能するらしい。ただしAI機能面では比較的新しく開発が始まったせいか、そのスマートアシスト機能について成熟度が限定的だと感じるユーザーもいるっぽい。X上では「それなりに月額料金を支払わないと補完(autocomplete)が利用できず、ごく基本的な機能さえサブスクリプションで制限されてしまう」という指摘まで出ている。

こうした主要機能を有料化する点について、一部ではVS Codeとの競争上、不利になるという意見もみられる。それでもなお課題はいろいろ残るけど…ああ、なんか急に疲れてきた。でも結局、Zedはコード/テキストエディタ領域で一定の存在感を示していて、とくにVS Codeとの差別化という観点から注目されていることだけは確かなようだ。

VS Code派を揺るがす存在へ…でもプラグイン未対応部分も残る

カーソル(Cursor)やウィンドサーフ(Windsurf)がマイクロソフトの基盤の上に多層的なAI機能を積み重ねている、っていうのはまぁ事実なんだけど、Zedにはまだ独自性を打ち出す余地が残されてるんだよね。いや、こう書いててふと「本当にそうか?」とか思っちゃう瞬間もあるけど…うーん、でも現状はたぶんそう。Zedが適切な選択肢かどうか――その判断は開発者がワークフローや作業環境で何を一番大事にしてるかによって全然変わる気がする。ああ、考えすぎて疲れてきた。

高速性やプライバシーを求めていたり、「もう巨大化したブラウザ風エディタはうんざり!」みたいな人には、Zedってかなり新鮮なチョイスになると思う。ま、いいか。でも逆に豊富なプラグインエコシステムとか高度なAI統合にガッツリ頼ってる開発者からすれば…現時点ではZedじゃ物足りないこともあるっぽい。ちょっと話逸れた?まあ戻す。

それでもZedの主な強みは、AI対応のオープンソース製品であって、しかも単なるVS Codeのフォークじゃないという点だと私は思う。えっと、新しいツール試してみたい!と思ったら、この新興ツール、一度くらい触れてみても損はしないかもね……多分。

Related to this topic:

Comments