Helix plugin FAQ
Does Helix support plugins?
Not in its official releases yet. Matthew Paras is developing the plugin system in pull request #8675 using Steel, a Scheme
dialect made by him. The pull request hasn't been merged into master yet. To use
plugins, you'll need to build Helix from that branch yourself, as described below.
How do I install plugins in Helix?
These steps are adapted from STEEL.md and the vim.hx README.
1. Build Helix from the steel-event-system branch
git clone https://github.com/mattwparas/helix.git cd helix git checkout steel-event-system cargo xtask steel
This builds and installs Helix with Steel support, as well as the steel executable, the Steel language server, and Steel's package manager forge. You'll
need Rust installed for this.
2. Install the plugin with forge
For example, to install vim.hx:
forge pkg install --git https://github.com/mattwparas/vim.hx.git
Most plugins list the exact command in their README.
3. Require the plugin in init.scm
Add a line to the top of your init.scm to load the
plugin. The path to require differs per plugin, so check its README. For vim.hx,
it's:
(require "vim-hx/init.scm")
Some plugins need to be configured after requiring them. vim.hx, for example,
also needs this line in init.scm:
(set-vim-keybindings!)
4. Reload the configuration
Restart Helix, or run :config-reload if it's already running.
Can I install Helix with Steel without building it myself?
On some systems, yes:
- Arch Linux: the AUR package helix-steel-git builds the Steel branch for you. It replaces the regular
helixpackage. - Nix: use the
steelixpackage, and install plugins with helix-plugins-nix instead offorge. With Home Manager, you can also use nhx, which installs and configures plugins and generates yourinit.scm.
Otherwise, you'll need to build it yourself.
Where can I find plugins?
- The awesome-helix list has a section for plugins, among other Helix resources.
- People share plugins on the r/HelixEditor subreddit.
- This very website has a list of plugins.
Where is init.scm?
In Helix's config directory, next to config.toml:
- Linux and macOS:
~/.config/helix/ - Windows:
%AppData%\helix\
Building Helix with cargo xtask steel creates it for you if it doesn't exist yet.
If you can't find it, hx --health shows which config directory Helix uses.
What's the difference between init.scm and helix.scm?
Both live in Helix's config directory:
helix.scmis loaded first. Every function it provides becomes a typed command you can run with:.init.scmruns right after it and has access to the editor, which is why that's where you require and configure plugins.
How do I update a plugin?
Install it again with --force:
forge pkg install --git https://github.com/mattwparas/vim.hx.git --force
Then restart Helix, or run :config-reload.
How do I uninstall a plugin?
Remove the plugin's lines from init.scm, then uninstall it with forge using its package name:
forge pkg uninstall vim-hx
For plugins installed with forge, the package name is the first part of the path
you require. Run forge list to see the names of all installed packages.
Where does forge install plugins?
In the cogs directory inside Steel's home directory. Unless you've set the STEEL_HOME environment variable, that's:
- Linux and macOS:
~/.local/share/steel/cogs - Windows:
%UserProfile%\.steel\cogs
When will plugins be available in regular Helix?
There's no date yet. As of September 2026, pull request #8675 is still a draft. Subscribe to it on GitHub to get notified when it's merged.
What are Steel, forge and cogs?
- Steel is a Scheme implementation written in Rust, and the language Helix plugins are written in.
forgeis Steel's package manager.- Cogs are Steel packages, which is why plugins have a
cog.scmfile describing their name and dependencies.
Are plugins safe to use?
Plugins are not sandboxed, so they run with the same permissions as Helix itself. This means they can read and change your files and run arbitrary programs. The plugins on this site are contributed by the community and aren't vetted, so only install plugins you trust.
How do I write my own plugin?
- Start with the Writing a plugin section of STEEL.md, which covers setting up the Steel language server and the APIs available to plugins.
forge newscaffolds a new package.- Check the source code of some plugins to get examples of how the Steel plugin system works.
How do I get my plugin listed on this site?
Add a JSON file for it to the plugins directory of this site's GitHub repository and open a pull request. Once it's merged, the site rebuilds automatically.