zellij-plugin-dev

Guide Rust/WASM development of Zellij plugins with API usage and examples.

14|1|Updated Oct 22, 2025
One-click install
npx skills add https://github.com/delorenj/skills --skill zellij-plugin-dev
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: zellij-plugin-dev
Source: https://github.com/delorenj/skills/tree/main/zellij-plugin-dev
Command: npx skills add https://github.com/delorenj/skills --skill zellij-plugin-dev

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This skill provides guidance for building Zellij plugins in Rust/WASM, including structure, building, loading, and real-world integration examples.

Core Features & Use Cases

  • Plugin architecture patterns
  • Building, testing, and loading WASM plugins
  • Real-world plugin examples and references
  • Practical development workflow notes

Quick Start

Create a new plugin project, implement a minimal plugin, build, and load it in Zellij.

Frequently Asked Questions about zellij-plugin-dev

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a Zellij plugin with Rust and WebAssembly?

Build Zellij plugins by writing Rust code compiled to WASM/WASI targets. Implement core hooks—load, update, and render—to handle plugin initialization, state changes, and UI rendering. Use Zellij's plugin API to subscribe to events, execute commands, and manage permissions within the plugin ecosystem.

What's the basic structure of a Zellij plugin?

A Zellij plugin requires three essential hooks: load (initialization), update (event handling and state), and render (UI output). Plugins also need permission declarations, event subscriptions, and integration points for external tools like Docker and Git. The complete structure ensures proper lifecycle management and secure operation.

Can I integrate external tools like Docker or Git into a Zellij plugin?

Yes. Zellij plugins support external integrations through command execution within the plugin lifecycle. You can invoke Docker, Git, and other command-line tools from your plugin's update hook, then process results in the render phase to display integrated workflows.

What do I need to know before starting Zellij plugin development?

You need Rust proficiency, knowledge of WebAssembly compilation to WASM/WASI targets, and understanding of the Zellij plugin API. Familiarity with event-driven architecture, permission models, and plugin lifecycle hooks (load, update, render) is essential for building functional plugins.

How do I test and load a compiled Zellij plugin?

Build your Rust plugin to a WASM binary, then load it into Zellij using the plugin configuration. Test plugin behavior by triggering events, verifying state updates in the render phase, and confirming external command execution. Iterate on your implementation using Zellij's plugin reload functionality.

What are the limitations of event subscription in Zellij plugins?

Plugin event subscriptions are scoped by the permission model you declare. Plugins can only subscribe to events and execute commands their permissions allow. WASM/WASI sandboxing restricts direct filesystem and network access; communicate with external systems through Zellij's command-execution API instead.