zellij

zellij-orgMIT活跃维护 有专家点评

用 Rust 写的终端工作区,把多路复用、分屏、布局和插件都内置好了,开箱即用,适合在终端里同时管理多个会话和任务。

A terminal workspace with batteries included

v0.45.1发布于 2026-08-28 09:21 UTC36,000star +25 / 7 天1,526fork同步于 2026-11-11 05:20 UTC

专家点评

上手难度:进阶更新于 2026-11-11

Rust 写的终端复用器,用布局文件和 WASM 插件替代 tmux 的配置脚本

适用场景

  • 需要把固定几套工作区(编辑器、日志、测试、REPL)一键还原:布局文件是声明式的,比 tmux 里堆 split-window 命令好维护,换别的就得自己写脚本拼
  • 多人同时看/操作同一个终端会话:内置协作共享,不用再叠 tmate 或 ssh 到同一台机器上抢同一个 attach
  • 想要浮动窗格、堆叠窗格这类 tmux 没有的交互:这是它和 tmux 最实际的分歧点,习惯 tmux 的 prefix 键模型反而会觉得别扭
  • 想用非 Rust 语言写终端插件:插件编译成 WASM 即可,Python/Go 都能上手,tmux 那边只能写 shell 或 C

踩坑

  • 从 main 分支 cargo install 会污染缓存,之后正式版可能起不来;只装 crates.io 或发行版包,别图新
  • 图形协议类需求(kitty graphics protocol)在 issue 里反应数最高但长期未落地,依赖终端内嵌图片的工作流现在别指望它
  • 嵌套实例(ssh 进去再开一层)和系统重启后恢复会话这两类问题被反复提出,跨机器、跨重启的长驻会话场景要提前验证
  • Windows 原生支持仍是高热度 feature request,Windows 上只能走 WSL

同类对比

tmux 仍是默认选择:要极致稳定、脚本生态成熟、远程机器上预装就有,选 tmux;Zellij 的增量在布局文件、WASM 插件和协作,不在复用器核心。

怎么上手

由 README 提炼,执行前请确认
cargo install --locked zellij
硬件要求按 README 说明

README 未说明

下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

终端复用器兼工作区,开箱即用又高度可定制,适合从新手到高级用户

用 Rust 写的终端工作区,把多路复用、分屏、布局和插件都内置好了,开箱即用,适合在终端里同时管理多个会话和任务。

核心能力

  • 用布局文件实现个人自动化与深度定制
  • 支持真正的多人协作共享终端会话
  • 提供浮动与堆叠窗格等独特交互体验
  • 插件系统支持任意可编译为 WebAssembly 的语言
  • 内置 web 客户端,终端不再是必需

容易踩的坑

不建议从 main 分支安装,预发布代码可能损坏缓存导致正式版无法使用;需先确认系统有对应安装包或把预编译二进制放入 $PATH

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v0.45.1
  1. v0.45.1Release v0.45.1最新正式版2026-08-28 · 2026-08-28 09:21 UTC

    This is a small patch release (mostly) set to address some issues discovered in the latest 0.45.0.

    Notable changes

    1. The nested session detection now works over SSH without having to forward environment variables
    2. It's now possible to opt-out of the newly introduced behavior, where scrolling with the mouse inside a pane enters scroll mode. To do so, add scroll_mode_sync false to the configuration.
    3. It's now possible to set an explicit theme hue in the config (i.e. dark or light) that will be used if the system doesn't know which theme we're in. To do so, add explicit_theme_hue light # or dark to the config.
    4. New feature: it's now possible to start a new session in the foreground or background with a specific running command instead of the default terminal. zellij attach -c foo -- htop for foreground zellij attach -b foo --htop for background.
    5. Some issues fixed with notification parsing specifically regarding OSC9 which overloaded the existing OSC99 notification spec (this manifested for some users as excess notifications when saving a file in nvim for example)
    6. Fixed some issues with the kitty image protocol clearing on stacked panes and not working until first resize

    Full Changelog: https://github.com/zellij-org/zellij/compare/v0.45.0...v0.45.1

    Please Support the Zellij Developer ❤️

    Zellij is a labor of love and is provided free and open-source to anyone who wishes to use it.

    Zellij will never display ads or collect your data.

    To help sustain the project, please consider a recurring donation so that the developer can pay their bills: https://github.com/sponsors/imsnif

  2. v0.45.0Release v0.45.02026-08-20 · 2026-08-20 09:05 UTC
    查看更新说明

    This release includes some major long-requested integrations with modern terminals as well as with Zellij itself: nested sessions become a first-class experience, images render through the Kitty graphics protocol, the scrollback understands shell prompts, and the default interface gets a redesign.

    Following is a non-exhaustive list of some major and significant changes:

    Nested Sessions

    Running Zellij inside a Zellij pane (eg. after ssh-ing to a remote machine) is now a first-class workflow. The inner session announces itself to the outer one, and the outer session reacts when its pane gains focus, providing the user with 2 options:

    1. Zoom in and control the nested session - the nested session takes up the whole screen until toggled back (Ctrl o + f, or clicking the session breadcrumbs in the tab-bar)
    2. Control the nested session on focus - keys and mouse are routed directly to it, with the outer session's chrome dimmed. Ascend back with Ctrl o + ], descend again with Ctrl o + [

    The behavior is controlled with the new nested_session_handling config option (ask (default) / fullscreen / descend / never).

    Kitty Graphics Protocol

    Zellij now implements the Kitty graphics protocol in addition to the existing Sixel support. Image placements are tracked per pane and behave correctly across resizes, relayouts, scrollback, fullscreen and floating/pinned panes. The host terminal needs to support the protocol as well (queried at startup); the feature can be disabled with support_kitty_graphics_protocol false.

    Relatedly, Sixel support is now only advertised to applications (through DA1 / XTSMGRAPHICS) when the attached terminal actually supports it.

    Shell Integration (OSC 133)

    Zellij now parses the OSC 133 "semantic prompt" sequences (emitted by fish out of the box; bash/zsh need a shell integration snippet). This enables:

    • Jump between prompts in the scrollback: [ / ] in scroll and search modes
    • Select a command with its whole output: m in scroll mode, or triple-click inside the output (opt-out of triple-click with osc133_command_selection in the config)
    • Copy the last command's output to the clipboard: c in scroll mode

    Also in the selection department: word boundaries for double-click selection are now configurable with word_separators.

    More info: https://zellij.dev/documentation/shell-integration.html

    New UI

    Title frames: pane frames now default to a single title line above each pane instead of a full border. To restore the classic look:

    pane_frame_style "full"
    

    The style can also be changed at runtime with zellij action set-pane-frame-style or the new SetPaneFrameStyle keybinding action.

    Stacked lists: stacked panes now render as a list of one-line titles with the expanded pane pinned to the bottom, including exit-status indication in collapsed titles and bulk float/embed operations. To restore the previous in-place rendering:

    stacked_pane_list false
    

    Some mouse behaviors can also now be specifically opted out of in the config: mouse_hover_tips false (hover help tips) and mouse_scroll_resize false (Ctrl + scroll wheel resizing).

    Mobile Web UI + PWA

    The built-in web client now detects mobile browsers and switches to a dedicated touch interface: pane/tab pickers, an on-screen keyboard, panning and fit toggling, single-pane fullscreen and a light theme. The web client can also be installed as a standalone app (PWA) directly from the browser, including behind a base_url reverse-proxy prefix.

    Per-Client Tab Sizes

    Each tab is now sized according to the viewports of only the clients currently viewing it. Clients focused on different tabs no longer force the whole session down to the smallest terminal; clients on the same tab converge

  3. v0.44.3Release v0.44.32026-05-13 · 2026-05-13 07:49 UTC
    查看更新说明

    This is a small patch release set out to fix some issues introduced by our host query forwarding system.

    Issues such as STDIN stalling, popup panes being blocked and mouse+key movement producing control characters should be fixed.

    Full Changelog: https://github.com/zellij-org/zellij/compare/v0.44.2...v0.44.3

    Please Support the Zellij Developer ❤️

    Zellij is a labor of love and is provided free and open-source to anyone who wishes to use it.

    Zellij will never display ads or collect your data.

    To help sustain the project, please consider a recurring donation so that the developer can pay their bills: https://github.com/sponsors/imsnif

  4. v0.44.2Release v0.44.22026-05-05 · 2026-05-05 06:43 UTC
    查看更新说明

    This is a small patch release to fix some issues found recently in 0.44, as well as some minor long standing annoyances.

    The only major feature introduced in this patch is support for CSI 2031: automatically switching between dark/light theme (assuming the terminal emulator itself supports it), as well as forwarding these instructions to the apps running inside Zellij. With this change, comes the new theme_dark and theme_light configuration parameters, that will be used by Zellij when it is instructed to switch, eg.

    theme "dracula" // normal theme as it was up until now
    theme_dark "dracula" // Zellij will use this when instructed to change to a dark theme
    theme_light "catppuccin-latte" // Zellij will use this when instructed to change to a light theme
    

    For convenience (eg. when using a terminal emulator that does not support theme switching), Zellij also now includes the zellij action set-light-theme, zellij action set-dark-theme and zellij action toggle-theme CLI commands to allow doing this manually. (note: when issuing these commands, Zellij will also send a CSI2031 to running terminal applications inside it that requested it, even if the host terminal itself does not support them).

    For a full list of changes, please see the changelog.

    Please Support the Zellij Developer ❤️

    Zellij is a labor of love and is provided free and open-source to anyone who wishes to use it.

    Zellij will never display ads or collect your data.

    To help sustain the project, please consider a recurring donation so that the developer can pay their bills: https://github.com/sponsors/imsnif

  5. v0.44.1Release v0.44.12026-04-07 · 2026-04-07 13:07 UTC
    查看更新说明

    This is mostly a patch release to fix issues discovered in 0.44.0

    Some fixed highlights:

    • Fixed the performance regression when switching tabs
    • Properly report OSC52 support in DA1 which will help applications such as neovim discover Zellij's clipboard support
    • Codex scrolling bug: We have accepted a mitigation for an issue where users of Codex would not see scrollback inside Zellij. This was happening due to some off-spec behavior on the part of Codex (nothing wrong, just them relying on a gray area in the specification). This version adjusts the Zellij behavior to match Codex's expectations.
    • Various fixes for the recent Windows port
    • The web-client now uses the base-url when switching sessions as well
    • Fixed some CJK IME cursor positioning support for East Asian languages

    New stuff

    • Added a focus-pane-with-id and are-floating-panes-visible CLI actions
    • Zellij now supports and forwards OSC-99 desktop notifications
    • Added zellij --layout-string to allow providing in-line layouts
    • Added --tab-id to all CLI actions opening new panes, to be able to open them in a specific tab

    For the full list of changes, see the CHANGELOG.

    Please Support the Zellij Developer ❤️

    Zellij is a labor of love and is provided free and open-source to anyone who wishes to use it.

    Zellij will never display ads or collect your data.

    To help sustain the project, please consider a recurring donation so that the developer can pay their bills: https://github.com/sponsors/imsnif

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    What is this?

    Zellij is a workspace aimed at developers, ops-oriented people and anyone who loves the terminal. Similar programs are sometimes called "Terminal Multiplexers".

    Zellij is designed around the philosophy that one must not sacrifice simplicity for power, taking pride in its great experience out of the box as well as the advanced features it places at its users' fingertips.

    Zellij is geared toward beginner and power users alike - allowing deep customizability, personal automation through layouts, true multiplayer collaboration, unique UX features such as floating and stacked panes, and a plugin system allowing one to create plugins in any language that compiles to WebAssembly.

    Zellij includes a built-in web-client, making a terminal optional.

    You can get started by installing Zellij and checking out the Screencasts & Tutorials.

    For more details about our future plans, read about upcoming features in our roadmap.

    How do I install it?

    The easiest way to install Zellij is through a package for your OS.

    If one is not available for your OS, you could download a prebuilt binary from the latest release and place it in your $PATH. If you'd like, we could automatically choose one for you.

    You can also install (compile) with cargo:

    cargo install --locked zellij
    
    Try Zellij without installing

    bash/zsh:

    bash <(curl -L https://zellij.dev/launch)
    

    fish/xonsh:

    bash -c 'bash <(curl -L https://zellij.dev/launch)'
    
    Installing from main

    Installing Zellij from the main branch is not recommended. This branch represents pre-release code, is constantly being worked on and may contain broken or unusable features. In addition, using it may corrupt the cache for future versions, forcing users to clear it before they can use the officially released version.

    That being said - no-one will stop you from using it (and bug reports involving new features are greatly appreciated), but please consider using the latest release instead as detailed at the top of this section.

    How do I start a development environment?

    • Clone the project
    • In the project folder, for debug builds run: cargo xtask run
    • To run all tests: cargo xtask test

    For more build commands, see CONTRIBUTING.md.

    Configuration

    For configuring Zellij, please see the Configuration Documentation.

    About issues in this repository

    Issues in this repository, whether open or closed, do not necessarily indicate a problem or a bug in the software. They only indicate that the reporter wanted to communicate their experiences or thoughts to the maintainers. The Zellij maintainers do their best to go over and reply to all issue reports, but unfortunately cannot promise these will always be dealt with or even read. Your understanding is appreciated.

    Roadmap

    Presented here is the project roadmap, divided into three main sections.

    These are issues that are either being actively worked on or are planned for the near future.

    If you'll click on the image, you'll be led to an SVG version of it on the website where you can directly click on every issue

    roadmap

    Origin of the Name

    From Wikipedia, the free encyclopedia

    Zellij (Arabic: الزليج, romanized: zillīj; also spelled zillij or zellige) is a style of mosaic tilework made from individually hand-chiseled tile pieces. The pieces were typically of different colours and fitted together to form various patterns on the basis of tessellations, most notably elaborate Islamic geometric motifs such as radiating star patterns composed of various polygons. This form of Islamic art is one of the main characteristics of architecture in the western Islamic world. It is found in the architecture of Morocco, the architecture of Algeria, early Islamic sites in Tunisia, and in the historic monuments of al-Andalus (in the Iberian Peninsula).

    License

    MIT

    Sponsored by