The what, why, and how of Oil.code
Jul 28th, 2025
What is oil.code?
Oil.code is my attempt to create an experience like oil.nvim that we can use in VSCode, Cursor, etc.
Oil lets you quickly navigate your project, rename files, and move files without your hands needing to leave your keyboard. This is particularly useful for those of us that are heavy users of keyboard shortcuts or use a VIM plugin. Opening oil opens a file in your editor. You can change a line to rename a file. Copy a line to copy a file. Create files and directories just by typing. Move files or whole directories to new locations. Or all of the above at once. The best part of all is that it keeps you in your editor so you can focus on the code and clear the clutter of a file explorer.
Once you have used oil.nvim, it is hard to go back to the default file explorer in Neovim or VSCode.
Why make oil.code?
I have been using the VSCodeVim plugin for work for roughly two years now and Neovim for personal projects for roughly the same amount of time. In that time I have found the Neovim experience to be more to my liking and useful plugins like oil.nvim, telescope, and harpoon to be the way I want to navigate my projects.

Unfortunately for me, I can’t use Neovim for my current project. I also find myself leading teams where the majority of developers will use VSCode or Cursor. Being able to share VSCode configs for debugging, recommended extensions, and using the same tools as the rest of the team can be very important to support a team of developers of varying skill levels.
A lot of progress in the last few years has been focused on the LLM experience in your editor. GitHub Copilot and Cursor are leading the pack and can both use the same set of extensions (for the most part).

I find that the fuzzy finder in VSCode to be sufficient, and someone has already created a Harpoon extension, so my biggest pain point switching back to VSCode from Neovim was no Oil.
How did this happen?
One day on the commute home from Seattle, I was discussing with a coworker and fellow Neovim user the pain of not having oil when we are working in a VSCode based editor. Often our reason for this is to take advantage of the LLM integration of GitHub Copilot or Cursor. The solution was right there in front of us. Why don’t we use LLMs to quickly build an Oil extension for VSCode? We threw out some names but I ultimately landed on oil.code.

That same week I spent a few hours with GitHub Copilot and built the initial version of the extension. It was working well enough for navigating and renaming so I went through the steps to publish that version to the VSCode Marketplace and started to use it at work.
That was when I discovered that publishing an extension to the VSCode marketplace wouldn't make it available in Cursor. I had to publish it to the Open VSX Registry as well. Thankfully, I was able to register and begin publishing to both registries. I setup a simple GitHub Actions pipeline to test PRs and merges and to publish when a release was created. For now I will be manually creating the release commits and tags, but I may automate that in the future.
Finally!
Overall I’ve been very happy to have Oil everywhere I edit code. We already have hundreds on installs and great feedback in GitHub with several issues logged and fixed. I welcome everyone to give it a try and log bugs, open PRs, and request missing features! I couldn’t have done it without the amazing oil.nvim plugin and the VSCodeVim and Neovim extensions!