Loading Plugins
Plugins can either be loaded through a Layout, through the command line, or from a keybinding.
On startup
Plugins can also be loaded on startup through the load_plugins configuration block. Eg.
load_plugins {
https://example.com/my-plugin.wasm
file:/path/to/my/plugin.kdl
my-plugin-alias
}
These plugins will be loaded in the background on session startup, only appearing once to request permissions from the user if they need any.
Through the built-in plugin-manager
Plugins can also be loaded (in the background or foreground) through the plugin manager. This built-in plugin, accessible by default with Ctrl o + p, allows both loading plugins and monitoring existing plugins:

Plugin URL schema
Plugins are referred to by URLs. Currently there are four supported schemas:
- The file schema:
file:/absolute/path/to/my/plugin.wasm- for reading plugins from the local HD - The built-in
zellij:schema (eg.zellij:bars) for loading built-in zellij plugins. - Urls (
http(s)://path/to/my/plugin.wasm) - Bare aliases (
filepicker), see Plugin Aliases
Built-in plugins
These plugins are bundled with Zellij and can be loaded with the zellij: schema:
| Name | Description |
|---|---|
zellij:bars | The tab bar, status bar and compact bar. Which bar it draws is chosen with its role configuration (tab-bar, status-bar or compact-bar) |
zellij:strider | The file picker (see the filepicker alias) |
zellij:session-manager | The session manager and welcome screen |
zellij:configuration | The settings screen |
zellij:plugin-manager | The plugin manager |
zellij:about | The about screen |
zellij:share | Web sharing of the session (see the web client) |
zellij:multiple-select | Selecting several panes at once |
zellij:layout-manager | The layout manager |
zellij:prompt | The popups used by zellij prompt and the prompt plugin command (see the prompt alias) |
zellij:context-menu | The right-click context menu (see the context-menu alias) |
Note: the tab bar, status bar and compact bar are one shared plugin,
zellij:bars. The nameszellij:tab-bar,zellij:status-barandzellij:compact-baralso work: they loadzellij:barswith the matchingrole. The built-intab-bar,status-barandcompact-baraliases point tozellij:barsas well.
Plugins loaded through load_plugins that need events from before any user is attached receive them once they have loaded.