Show HN: Void, an open-source Cursor/GitHub Copilot alternative (github.com)
The hard part: we're building Void as a fork of vscode. The repo has great documentation for extensions, but going deeper gets pretty involved. All of the code is OOP-based, and they mount DOM nodes the old-school way (which is what React was supposed to solve..). So adding new UI features isn't exactly trivial. Microsoft also made its extension marketplace closed-source so we (and Cursor) have to hack our way through it. One thing we're excited about is refactoring and creating docs so that it's much easier for anyone to contribute.
The other benefit of open source is we don't need to hide how our prompts are built, so we can transfer the private API logic that Cursor has right onto your local machine. This lets you host a model on-prem and have your data stay completely private. It also means you can go directly to LLM providers (OpenAI, Anthropic) instead of going through us as a middleman.
There's still a lot to build, and full disclosure, we are very early stage. But we're super excited about building and have a working prototype that we're quickly adding features to.
Let us know if there's anything you want to see in a Cursor-style editor. Or feel free to shoot us a pull request. Cheers!
167 comments
[ 3.1 ms ] story [ 224 ms ] threadI'd imagine Jetbrains users are much more willing to pay, and the non-AI intelligence Webstorm has baked in save me almost as much cognitive load as Cursor does if not more compared to base vscode.
I tried Continue but it wasn't very smooth at all.
Edit : This is only my guess, I have no internal knowledge of Cursor.
[1] https://supermaven.com/
I prefer to stay with addon
Edit: I see it, this is in their newest blog post
https://x.com/SupermavenAI/status/1835743882971426837
I hope they use Jetbrains as a base instead of VS Code (or roll their own). I strongly prefer IdeaVim or over the one in VS Code. It's the main reason why I don't use Cursor.
I love their products, and I would be sad if they can't stay competitive, but it looks like they are taking all the wrong turns.
Honestly speaking I'm not a big fan of chat based assistants, which was one of my complaints about IntelliJ's own assistant. Auto-complete feels more natural, although I can see that the suggestions might be more accurate and to the point with the chat based ones.
I would know, I made the mistake of paying yearly.
Happy user for a few months now :)
The thing that's really keeping me in Cursor (vs decamping for Zed) is NOT the Cmd K or the sidebar chat. It's actual Cursor's Tab autocomplete model. I've tried many other tab completion models and Cursor Tab blows them out of the water. Supermaven's new release is promising, however.
For the use-case you're solving for (issues with code-privacy), I think something like https://codeium.com/ does already allow for on-prem deployments with enterprise support. I'm trying to think of who would be served well by a fork of VSCode vs Continue.dev or something like a codeium VPS deployment.
It's definitely not boilerplate level code - but it also also stops well short of architecture level work. Here's a recent prompt of me trying to implement line-by-line diff generation: https://pastebin.com/WRJpNwqc
When I need to do architectural/design work, I do it in multiple passes, not generating any code, just lots detailed text with tons of feedback/back-and-forth with the model.
I'm on the pro plan but it's not enough for my needs - I run through the quota in 10-15 days. Then, I revert to using Sonnet 3.5 via API key.
There are quite a few extensions and AI editors offering the snippet-like 'tab autocomplete', but Cursor are the only ones afaik who have nailed the full file no-look 'tab-tab-tab-tab autofix' workflow, with what I assume must be a combination of monaco/vscode hackery similar to what you're doing, and their own tuned model (i.e. not an off-the-shelf llm). Is this the piece you're going after when you say 'all of Cursor's core features', or are you primarily focused on something else?
On the topic of extensions, as an occasional user of Cursor I noticed that they've always been able to quite happily 'import' extensions you've already downloaded to a local VSCode profile, which makes sense, but they've occasionally struggled to use the same marketplace APIs for searching for extensions. I'm not sure what you're hoping for here, but I'd suggest you settle for that approach as a starting point. Also be conscious that you're dealing with Microsoft, so be mindful of things like their brand guidelines[0], and avoid telling the world that you're 'hacking away' at their APIs. These things may seem insignificant and it's true that they probably won't cause you a problem unless you're successful.
Lastly, assuming that you're hoping to recruit contributors (which I assume is some of the motivation behind this post): you really need to sanitise your Github workflow and your repo CI. Your commit history[1] currently seems to mostly consist of you updating your docs and committing straight to your main branch with no review process or checks, and the only commit I can see that does have any kind of check in place, your initial commit, has a failed monaco check that you seem to have subsequently just disabled. You'll need to tidy this up a _lot_ and establish a testing baseline if you want to successfully scale the project or attract the calibre of contributor you'll need to be successful.
Hope that helps, best of luck with the project!
[0]: https://code.visualstudio.com/brand [1]: https://github.com/voideditor/void/commits/main/
I'd like to continue using Cursor but I'm don't want to have to buy Claude subscription twice (Cursor uses claude under the hood), and I prefer claude sonnet over chat-gpt.
This seems to work pretty well for Codeium, which offers its product free to consumers (at a loss), and is still able to make net profit from enterprise companies. At least that's the plan for now!
Is there anything more than this?
Storia-AI/sage: Chat with any codebase with 2 commands
I haven't tried this myself so I apologize if it ends up being bad, but I've seen Aider [0] get linked a few times from people who wanted a CLI solution for AI code completion.
[0]: https://aider.chat/
In use, treesitter-derived approach seems far effective than rag.
Aider lets you pair program with LLMs, to edit code in your local git repository. Start a new project or work with an existing git repo. Aider works best with GPT-4o & Claude 3.5 Sonnet and can connect to almost any LLM.
https://aider.chat/
See LLM Leaderboards as well: https://aider.chat/docs/leaderboards/
- https://github.com/yetone/avante.nvim
Did not have the time to test them yet and there are probably more.
However, I found Theia (https://theia-ide.org) on HN (like a bunch of other cool things; this is one way I justify the time I spend/sink on this site) and find it a much better fit for our OSS goals (foundation owned, open-source marketplace) with full mod-ability while being compatible to VSCode extensions API (in theory). I recommend you look into it for your app.
>Microsoft also made its extension marketplace closed-source
Ehm, Open VSX Registry exists.
> allowing AI to edit multiple files at once
Cursor already modifies multiple files at the same time. I typically do this by pressing cmd+shift+I and in the left side of the window the required files will be shown as they're being modified.
One critical question to the users:
Is Void able to understand the source code files from the project as a whole?
What I mean is being able to read the project, and then make suggestions based on the code that was written and propose new functions? For example, I would see it as fantastic to write unit tests where I'd say: "Please write a unit test that is verifying the functions on ABC.class" or "update the unit tests for ABC.class".
I know it is difficult for an LLM to create a valid result on the first try, but at least it does same me a lot of time creating a skeleton with most of the functions and samples already there. Most times just have to fine tune or fix a few parts but can say it amplifies my output speed by at least 10x to have that kind of functionality.
What is your impression? Can it read all source code files on the project?
Hard sell to choose you especially as a full on editor replacement (as well as a copilot replacement) without a demo or even gifs.
Can't you just do your own "Copilot" extension and plumb in an instance to ollama? Isn't that what Continue does? https://marketplace.visualstudio.com/items?itemName=Continue...
They're simply throwing money at similar projects in the same space, hoping one will stick, without any special insight or reason why one should be more successful over another.
I guess similar theme can be seen in LLM/AI space in general, or previously in the streaming services, just throw as much money at the problem in the hope that your solution will stick, without any significant and clear differentiation.
Oh there's a lot more than that.
Heck, even centuries ago, they'd fund multiple ship crews to navigate the Earth, hoping one would find smth interesting.
It's the model that works in high-risk, high-reward endeavors.
Are there limitations in the extension APIs that make it hard to implement?
(Void is HN backed)
https://zed.dev/
ssh server is still in early stages, not even p2p yet.
The requirement for extensions to be built in rust only makes it harder to adopt.
When they these 2 things get solved and the editor remains fast, it might actually be very tempting to replace vscode with zed.
Vscode is fantastic but tends to become bloated quickly....
Cursor has a pretty polished experience, but I keep coming back to VS Code and using continue.dev, which is a lot rougher around the edges, because the UI works well enough.
Extensions like Codeium do the most naive thing possible by writing something like <<<<<<< DIFF >>>>>>>> in your file, literally breaking syntax highlighting. Others like Copilot are super buggy.
Right now Void is built on top of an extension, but we're also modifying and hooking into parts of the IDE to make a more native UX.
> Host your own models locally, or communicate directly with your favorites.
Looks fantastic, will happily try this!