用途:zmx 用于管理需要超出对话生命周期的进程,例如开发服务器、文件监听器、测试监听器、数据库服务器和 tilt。它会话化运行这些进程,使智能体 shell 不被阻塞。
主要能力:可通过 zmx run 在不附加(attach)的情况下发送命令;用 zmx list --short 列出会话名;用 zmx history 查看回滚输出并配合 tail、rg 检查就绪或错误;用 zmx wait 等待一个或多个会话结束;用 zmx kill 结束会话。
必要用法:创建会话前先检查 zmx list --short,避免重复导致端口冲突。会话名建议基于 git rev-parse --show-toplevel 生成,采用 ${PROJECT}-<role> 形式,如 myapp-server、myapp-tests。多进程使用同一项目前缀的多个会话。启动示例:SESSION="${PROJECT}-server"; if ! zmx list --short 2>/dev/null | grep -q "^${SESSION}$"; then zmx run "$SESSION" 'npm run dev'; fi。发送命令可用 zmx run "${PROJECT}-main" 'cat README.md',或通过 stdin:echo "ls -lah" | zmx r "${PROJECT}-main"。
适用场景:tilt up、开发服务器(npm run dev、rails s)、文件监听器、测试监听器、数据库服务器。一次性构建(npm run build)或十秒内完成的快速命令不使用。
限制:不要使用 zmx attach,它会阻塞智能体 shell。清理时只结束当前项目前缀匹配的会话,避免影响其他智能体实例,并在 kill 前核对会话名。资料未提供安装命令、版本、平台、收费或完整命令参考。