Zellij远程会话控制

12分钟前更新 1 00
Zellij远程会话控制Zellij远程会话控制
Zellij远程会话控制

技能简介

Zellij 是一款现代终端复用器,本技能通过发送按键和抓取面板输出来远程控制 Zellij 会话,适用于需要交互式 TTY 的场景。

业务背景

为开发运维团队提供远程终端会话的精细控制能力。无需SSH直连服务器,即可向隔离的终端环境发送指令并获取实时输出,特别适合管理长时间运行的交互式任务或多代理并行开发场景,提升远程协作与自动化运维效率。

落地案例:后端团队需要监控部署在测试环境的交互式数据迁移脚本。工程师创建Zellij会话后,通过发送按键指令持续输入确认提示,同时抓取面板输出观察进度;同一台服务器上还可并行运行另一个Zellij会话供AI编码代理使用,两者互不干扰,避免多任务串扰导致的命令冲突。

能做什么

  • 创建并管理多个隔离的终端会话
  • 向远程会话发送按键指令和文本输入
  • 抓取指定面板的实时输出内容
  • 并行运行多个编码代理(如 Codex、Claude Code)
  • 监控长时间运行的交互式任务

使用说明

安装 Zellij:

# macOS/Linux (Homebrew)
brew install zellij

# 或使用 Cargo
cargo install zellij

快速开始:

  1. 设置数据目录:DATA_DIR="${TMPDIR:-/tmp}/moltbot-zellij-data"
  2. 创建会话:zellij --data-dir "$DATA_DIR" new-session --session mysession --detach
  3. 运行命令:zellij --data-dir "$DATA_DIR" run --session mysession --name repl -- python3 -q
  4. 发送输入:zellij --data-dir "$DATA_DIR" action --session mysession write-chars --chars "print('hello')\n"
  5. 抓取输出:zellij --data-dir "$DATA_DIR" pipe --session mysession --pane-id 0

常用操作:

  • 列出会话:zellij --data-dir "$DATA_DIR" list-sessions --long
  • 附加会话:zellij --data-dir "$DATA_DIR" attach --session mysession(分离按 Ctrl+p d
  • 删除会话:zellij --data-dir "$DATA_DIR" delete-session --session mysession

输入与输出

见下方输入与输出表格。

项目内容
输入会话名称、面板 ID、按键/文本内容、数据目录路径
输出面板文本输出、会话列表、执行状态
适用人群需要远程控制交互式 CLI 的开发者、运维人员、AI 编码工作流用户
不包含Windows 原生支持、GUI 应用控制、纯后台非交互任务管理

 

风险提示

  • 仅支持 macOS 和 Linux,Windows 需通过 WSL 使用
  • 依赖 zellijjq 二进制文件必须在 PATH 中
  • 长时间非交互式任务建议使用 exec 后台模式,而非 Zellij
  • 并行运行多个编码代理时,建议使用独立 git worktree 避免冲突
  • 发送按键前确认目标 pane-id,避免误操作其他会话

来源信息

原始链接:https://github.com/openclaw/skills/tree/main/skills/jivvei/zellij/SKILL.md
来源类型:GitHub 仓库

数据统计

相关导航

暂无评论

none
暂无评论...