Void - Cursor/GitHub Copilot の代替となるオープンソース
(github.com/voideditor)- Void は、コードベース内で AI エージェントを使い、変更内容をチェックポイントとして可視化し、ローカルモデルやホストを取り込めるようにした VS Code フォークだったが、現在は deprecated 状態で、これ以上コントリビューションを受け付けていない
- プロジェクトは引き続きオープンソースとして残っており、VS Code をフォークしようとする開発者は Void のロジックや構造を参考にできる
- README では、React + Tailwind の統合、パッケージング・署名・自動更新用の GitHub Actions、独自実装の AI provider コード、IPC と CSP に対応する構造を参考対象として提示している
- Void はメッセージを provider に直接送り、データを保存しないとしており、autocomplete(FIM)、
<thinking>タグ、tool タグのような応答構文をサポートする - 新バージョンの開発よりも、Void Forks、過去の Releases、Codebase Guide、HOW_TO_CONTRIBUTE、void-builder などの資料を通じて、フォークと再利用を支援している状態
プロジェクトの状態
- Void は deprecated 状態で、これ以上コントリビューションを受け付けていない
- コミュニティからのコード貢献と支援に感謝を示し、Void は引き続き オープンソース として残っている
- VS Code をフォークする際に参考にできる優れたリファレンスの一つとして残っているとしている
ダウンロードとフォーク資料
- 最新の Void フォーク一覧は Void Forks で確認できる
- 過去バージョンは Releases からダウンロードできる
- VS Code フォークの開発者は Codebase Guide と How to Contribute を参考にできる
VS Code フォーク実装で参考にできる部分
- Void は React + Tailwind をマウントしている
- 通常の VS Code では不可能なため、React のコンパイルと Tailwind のスコープ処理のためにビルドパイプラインを拡張している
- Tailwind のスコープ処理には scope を使用している
- GitHub Actions をコピーして Void を パッケージング、署名、自動更新 できる
- VS Code のビルドパイプラインは非公開のため、一般的には非常に難しいと説明している
- AI provider コードはゼロから独自実装されている
- autocomplete(FIM) とカスタム応答をサポートしている
- 共通の
<thinking>タグ、tool タグなどのための構文を公開している - IPC の使用と CSP への適合のためのアーキテクチャを参考にできる
- ファイル編集にはカスタムサービスを使用している
- EditCodeService は、コードがストリーミングされる際にトークン単位でも diff を表示できる
- VoidModelService はバックグラウンドでファイルを編集し、OS 上のファイルとテキストバッファを同期する
- Void を構成する全リポジトリ一覧は repos で確認できる
Void の機能説明
- Void はコードベース内で AI agents を使えるようにする
- 変更内容をチェックポイントとして保存し、可視化できる
- 任意のモデルやホストをローカルに取り込める
- メッセージを provider に直接送り、ユーザーデータを保存しないとしている
- このリポジトリには Void Desktop アプリの全ソースコードが含まれている
参考リンクとサポート
- ウェブサイト: Website
- ロードマップ: Roadmap
- コントリビューション案内: Contribute
- Void は vscode リポジトリのフォーク
- 独自の Void バージョンを開発するには、HOW_TO_CONTRIBUTE と void-builder を参考にできる
- サポートチャネルは Discord server と hello@voideditor.com のメール
1件のコメント
Hacker News の意見
最近、VSCodeをプラットフォームのように使ってアプリをリファクタリングしようとして、回避するのも維持するのも簡単ではないUI設計上の判断で大きく痛い目を見た
Microsoftの非公開拡張機能マーケットプレイスも、オープンソースの目標には役立たなかった
代わりにHNでTheia(https://theia-ide.org)を知ったが、財団所有・オープンソースのマーケットプレイス・全体を修正できる可能性という点で、オープンソースの目標にはずっと合っているように見えた
理論上はVSCode拡張APIとも互換性があるので、このアプリでもTheiaを検討してみることを勧める
最近は多くのプロジェクトがそうし始めていて、全部ではないにせよかなり多い
それとも「eclipse」という言及は、単に不運な名前の衝突なのかもしれない
Monacoエディタは理論上vscodeリポジトリの一部で、設定/構成を含む「workbench」はその上の層にある
CursorやVoidのようなツールが、既存エディタの拡張機能(VSCode拡張、JetBrainsプラグイン)ではなく新しいエディタを作ることにした理由をうまく整理した記事があるとよい
拡張APIの技術的限界のためなのか、それともエディタ拡張より新しいエディタのほうがマーケティングしやすいからなのか気になる
個人や小規模企業には導入しやすいかもしれないが、大きな組織はすでに既存IDEとさまざまな統合を済ませているので、さらに別のIDEへ乗り換えさせるのは難しい要求になりそう
Command-KとCopilot++機能は拡張では不可能で、今後作りたい多くの機能も同様だという
https://forum.cursor.com/t/why-not-a-plugin/2448/2
拡張機能はしばしばバグが多かったり、自然に統合しにくかったりすると考えている。たとえばCopilotは選択範囲が飛び、Codeiumや他のオープンソース拡張も同じような限界がある
多くの拡張機能はユーザーのプロンプト入力にクイック選択ドロップダウンを使うが、これが不自然に感じられる
こうした問題を避けるには、CursorのようにIDEを自分たちで所有することが重要で、Cursorが人気の理由もそこにあると思う
IDE導入が難しいという点はその通り。すでに人気のある基盤の上に作れば小さなユーザー層により届きやすく、長期的にはプライバシーと優れたAI機能の集約によって大企業も説得したい
「フォーク」という欠点を受け入れてまでCursorを使うべき理由は、まだ見つけられていない
ただ最近はほとんどAiderに移った
別の人が収益化に触れていたが、それが本当の理由なのかもしれない
競争が増えるのは良いことだが、少し無礼に聞こえるかもしれないものの、ほとんどのソフトウェアフォークは消えていく
標準のVSCodeやVSCodiumで動くオープンソース拡張であるContinue + Claude-devの代わりに、これを使うべき理由を納得させてほしい
「Microsoftも拡張マーケットプレイスを非公開にした」と言っていたが、Open VSX Registryが存在する
ここまで作ったことは称賛に値し、ここから面白い部分が始まるように思う
スニペットのようなタブ補完を提供する拡張機能やAIエディタはかなり多いが、私の知る限り、ファイル全体を見ずに「tab-tab-tab-tab」で自動修正するワークフローをきちんと実装しているのはCursorだけだ
おそらくMonaco/VSCodeのハックと独自にチューニングしたモデル、つまり既製の大規模言語モデルではない組み合わせだろうが、「Cursorの中核機能すべて」と言うときに狙っているのがこれなのか、それとも別のところに集中しているのか気になる
CursorはローカルのVSCodeプロファイルにすでにダウンロード済みの拡張機能をかなりうまく「インポート」できたが、拡張機能検索用のマーケットプレイスAPIを使う点では時々苦労があった
出発点としてはその程度の方式に満足するのがよく、Microsoftを相手にする以上、ブランドガイドラインのようなものにも気を配る必要がある
Microsoft APIを「ハックしている」と世間に言うのは避けたほうがいい。小さく見えることでも、成功すれば問題になり得る
コントリビューターを募る目的もあるなら、GitHubワークフローとCIをかなり整備する必要がある
現在のコミット履歴は、ドキュメント修正後にレビューやチェックなしでmainブランチへ直接コミットしているものが大半で、唯一チェックが付いている初期コミットはMonacoのチェックが失敗した後、そのまま無効化したように見える
プロジェクトを成長させたり、必要なレベルのコントリビューターを引きつけたりするには、テストのベースラインを設け、はるかに多くの整理が必要だ
補完がとても良く、リファクタリング時にはほとんど魔法のようだ
1か月ずっとCursorを使ってからVSCodeを再び使ってみたが、比較するとCopilotは本当にひどかった
Cursorを使い続けたいが、Claudeのサブスクを2つ買いたくはない。Cursorは内部でClaudeを使っていて、私はChatGPTよりClaude Sonnetを好む
AIが生成したコードを自分のコードと自動でマージしてくれて、私は承認するか拒否するだけでよい
この機能にもカスタムAIを使っているようで、自分のAPIキーを持ち込む方式では動かず、サブスクが必要だ
「AIエディタ」領域で競争が増えるのは良いことだが、なぜ VSCode拡張として作らないのか気になる
拡張のほうがずっとアクセスしやすそうに見える
実装を難しくする拡張APIの制約があるのか気になる
VoidはHNの支援を受けている
フォークと元の製品との違いを追い続ける必要があり、その過程で抜け落ちる機能や壊れる拡張が出るのは、自分のワークフローでは受け入れたくない
Cursorはかなり洗練された体験を提供しているが、結局VSCodeに戻ってcontinue.devを使うことになった。ずっと荒削りではあるが、UIが十分うまく動くからだ
ただ、拡張だけでは望む ネイティブUI を作る良い方法がない
例えば変更前後を見せるのは中核的な機能だが、拡張の中では自然に感じられない
Codeiumのような拡張は、ファイル内に
<<<<<<< DIFF >>>>>>>>のようなものをそのまま書き込む最も単純な方式を使っていて、シンタックスハイライトを壊してしまうCopilotのような他の拡張はバグが多い
現在Voidは拡張の上に作られているが、よりネイティブなユーザー体験を作るためにIDEの一部も修正して組み込んでいる
例えば今の自分の第一候補のAIエディタはZed.devだが、JetBrainsを含む複数のキーマップを非常に簡単に設定できる
https://zed.dev/
Vimショートカットまで含めて、自分のVSCode環境全体を壊してしまう
これをやるのに、本当にエディタ全体を「所有」する必要があるのか分からない
upstreamとの同期を保つだけでもものすごい負担で、それによって何が得られるのか見えない
他の人たちが言っているように代替レジストリもあるし、ユーザーにエディタ全体をダウンロードしてインストールさせるより、独立したプラグインのインストール案内のほうが簡単だ
単に独自の Copilot拡張 を作ってollamaインスタンスにつなげるのではだめなのか気になる
Continueがやっていることはそれではないのか? https://marketplace.visualstudio.com/items?itemName=Continue...
まだダウンロードすらできないほど初期段階なのか? コードエディタのためになぜ Discordサーバー に入らなければならないのか分からない
VS Codeがすべての機能を取り込んだら、計画はどうなるのか気になる
ただし今は本当に基本的なレベルだ。サイドペインで大規模言語モデルを呼び出し、差分を適用/拒否するビューを作った最小実装に近い
現時点ではほとんど週末プロジェクトのレベルだ
誰がMicrosoftに買収されて、最終的にVS Codeの一部になるかを見るゲームなのかもしれない
PearAIもある。「VSCodeとContinueのフォークである オープンソースAIコードエディタ」だという
この領域はますます混み合っている: cursor.sh, continue.dev, double.bot, supermaven, codium.ai, PearAI、そして今度はVoidまである
https://github.com/trypear/pearai-app
私は https://double.bot の作者の一人です
誰かがVS Codeともっとよく競争できるように Omnivim2 をフォークしてくれたらいいのに
自分の理解では、このエディタはVS Codeのように見えるがネイティブにコンパイルされ、VS Codeプラグインをサポートしている
残念ながらプロジェクトは放置されているようで、ReasonMLで書かれている
開発ツールがWebブラウザを中心に作られることにはうんざりしている
90年代や00年代には、今のように複雑でなくても済む完全なネイティブアプリがあった
付け加えると、内部的にVimをベースに動作するという点もあり、自分にはむしろ強みに見える
https://github.com/onivim/oni2
同じユーザーが4日前に投稿した別のShow HN記事の 重複投稿 のように見える
https://news.ycombinator.com/item?id=41523197
FAQにも載っている: https://news.ycombinator.com/newsfaq.html#reposts
ただ素早くリリースしようとしているところだ