rigs
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
Chineserigs: your route into OpenRig
rigs:你的OpenRig接入通道
OpenRig runs a team of coding agents (Claude Code, Codex and others) side by side in tmux. A local daemon keeps their
tasks, messages and state, so the team keeps working across restarts. This skill gets OpenRig installed, gets a team
working on what the person wants, and shows how to work with that team from here.
The goal is a team doing the person's work, not just an install. Go through the steps in order and stop early only
if the person asks you to. When they say what they want built, give it to OpenRig's operator (step 2) instead of
building it yourself.
Tell the person what you're about to run and why before you run it. Don't install system packages or change their
machine without a yes. Starting OpenRig and a team writes files: Codex hooks and settings in
, a discovery skill in and , and, in the repository, managed
guidance in or plus the team's skills and plugins. Say so before you start OpenRig
(the full list).
~/.codex/config.toml~/.claude/skills~/.agents/skillsAGENTS.mdCLAUDE.mdOpenRig在tmux中并行运行一组编码代理团队(包括Claude Code、Codex等)。本地守护进程会保存它们的任务、消息和状态,因此团队在重启后仍能继续工作。本技能用于安装OpenRig、启动团队处理用户需求,并说明如何从当前环境与该团队协作。
目标是让团队完成用户的工作,而非仅仅完成安装。 请按顺序执行步骤,仅在用户明确要求时提前终止。当用户说明想要构建的内容时,将需求交给OpenRig的operator(步骤2),不要自行构建。
在执行命令前,告知用户你即将运行的内容及其原因。未经用户同意,不得安装系统软件包或修改其设备。启动OpenRig和团队会写入以下文件:中的Codex钩子与配置、和中的发现技能,以及代码仓库中或里的托管指南,还有团队的技能与插件。在启动OpenRig前请告知用户这一点(完整列表)。
~/.codex/config.toml~/.claude/skills~/.agents/skillsAGENTS.mdCLAUDE.md1. Install OpenRig, if it isn't installed
1. 安装OpenRig(若未安装)
- Check first: . If it prints a version, go to step 2.
rig --version - What it needs: macOS or Linux, Node.js 22 or 24, tmux, and Claude Code or Codex signed in. Check only what's
missing: ,
node --version,tmux -Vorclaude auth status.codex login status - Install: , then
npm install -g @openrig/cli(Node, tmux, the daemon port and state folders) andrig preflight.rig doctor - Then go on to step 2: say it's installed and ask what they want worked on, and in which repository. A plain "install OpenRig" includes this. Stop here only if they say not to start a team.
- If something fails: is the help guide for the installed version. If
rig context get helpitself won't run, use https://www.openrig.dev/help/agents. Getting started: https://openrig.dev/docs/getting-startedrig
- 先检查: 运行。如果输出版本号,直接进入步骤2。
rig --version - 系统要求: macOS或Linux系统、Node.js 22或24版本、tmux,以及已登录的Claude Code或Codex。仅检查缺失的依赖:、
node --version、tmux -V或claude auth status。codex login status - 安装: 运行,然后执行
npm install -g @openrig/cli(检查Node、tmux、守护进程端口和状态文件夹)和rig preflight。rig doctor - 随后进入步骤2: 告知用户安装完成,询问其想要处理的内容以及对应的代码仓库。即使用户仅说“安装OpenRig”,也包含这一步。仅当用户明确表示不启动团队时,在此停止。
- 如果出现故障: 是已安装版本的帮助指南。如果
rig context get help命令本身无法运行,请访问https://www.openrig.dev/help/agents 。入门指南:https://openrig.dev/docs/getting-startedrig
2. Open OpenRig and give its operator the goal
2. 打开OpenRig并向operator下达目标
-
Start OpenRig:, and
rig daemon statusif it isn't running.rig daemon startandrig preflightdon't start it. Starting it also starts OpenRig's own team, the kernel, whose operator sets up the person's team. Keep it.rig doctor -
Show them OpenRig, the handoff: once OpenRig is running, open the OpenRig TUI and operator for the person. Say you're opening it, then runon the daemon's desktop. This is the next step after installing or starting OpenRig, and the way back whenever they want their agents or OpenRig again. Don't wait to be asked or for particular words. If they've said not now, give them that command for later. It opens a view itself, using herdr when installed or plain tmux otherwise:
rig terminal open saved:kernel --window- Inside Herdr (you run in a Herdr pane): it switches the person's Herdr to an space, reusing a live one. No new window and no macOS prompt; their own spaces stay in the sidebar.
openrig kernel - In Terminal or Ghostty: a new tab or window the size of theirs.
- From Claude Desktop, iTerm or VS Code on a Mac: a new Ghostty window when supported, otherwise Terminal. Only
here, tell the person before running it that Allow is fine if macOS asks to control that app.
tells you where you run.
echo $TERM_PROGRAM $__CFBundleIdentifier,herdrorApple_Terminal, orghosttywithtmuxorcom.apple.Terminal, mean no macOS prompt, so don't mention one.com.mitchellh.ghosttywith anything else (iTerm, VS Code) can prompt, so say Allow is fine first.tmux - Layout: under 120 columns the operator fills the first page; from 120, the dashboard and operator share it. The advisor has its own tab or tmux window.
Then tell the person in a sentence or two where it opened and that the operator is ready for what they want to build. Don't list agents or statuses (the TUI shows them), and don't suggest a command for them to type. Preserve the current terminal. If OpenRig's notes say it couldn't confirm the view, say so plainly. If it's already open, point them to it rather than opening another. Only if the window cannot open,is the dashboard-only fallback; explain the failure and help with the chosen fallback. Herdr is visible only in a terminal the person can see; switching the shared TUI torig tui --shareddoes not open one. No and headless/SSH use are valid background outcomes. Provider-only:terminalsor--provider herdris for an existing provider workspace, not the first desktop window.--provider cmux - Inside Herdr (you run in a Herdr pane): it switches the person's Herdr to an
-
If the window can't open, or over headless SSH: say plainly that no visible terminal was opened, and ask the person to open a new terminal window or tab on the daemon's host. Over SSH, that's a new SSH session to it with the known account. If you only know an HTTP daemon address, ask for the SSH details rather than inventing them. Then give them one complete command:
- The command OpenRig printed: when can't open a window, it says why and ends with
rig terminal open saved:kernel --windowand a command (therun:field witherror). That command already names the installed herdr binary and the daemon's socket, or the conversation to attach. Relay it exactly rather than composing one. If a note asks you to place the view once Herdr starts, run that--jsonyourself after they start it.rig terminal open - If it printed no command: find in
operator.agent, take itsrig ps --nodes --rig kernel --json(never a guessed name) and givecanonicalSessionNamefor the operator's conversation.env -u TMUX tmux attach-session -t '=<canonicalSessionName>'
For any other failure, the table under "What can interrupt installation and the OpenRig view" insays why and what to do next.rig context get reference/getting-started.md#open-the-kernel-conversations - The command OpenRig printed: when
-
Give the operator the goal: ask what they want worked on, in which repository and on which branch, unless they've said. Find therow in
operator.agent, take itsrig ps --nodes --rig kernel --json(never the logical ID or a guessed name) and send:canonicalSessionNameOr the person types the goal and folder in the operator's pane. If they give you a goal later, forward it the same way. The operator helps them pick a team that fits their logins, starts it on their yes and gives the goal to the team's lead. Show them where the operator answers, and don't build the project yourself.rig send <canonicalSessionName> 'This is the agent that installed OpenRig. The person will answer in your pane. Goal: <goal>. Project folder: <absolute path>. Branch: <branch>.' -
Relay the operator's questions: the operator asks in its own pane, and the person may not be looking there. After each step you hand it, read its screen with. When it asks the person something (start this team? which folder? which option?), ask them here in the operator's words and send their answer back with
rig capture <canonicalSessionName>, or tell them to answer in the operator's pane. Unlike a prompt or a menu, a question doesn't show up as a stopped seat, so don't leave it to a background wait.rig send -
Installation is finished when the operator is ready and the person is talking to it; a healthy daemon alone isn't that. If they'd rather talk later, keep that choice, leave them the exact connection step and say the handoff to the operator is still pending.
-
See what's running:, then
rig psfor a team's agents. If a team is already running in that repository, tell the operator.rig ps --nodes --rig <rig> -
Check it's ready before you say so:. If an agent is stopped at a prompt or a menu, read it with
rig ps --nodes --rig <rig>and answer with the key that screen shows (rig capture <seat>@<rig>says how to send a digit, a letter or Escape), or ask the person. Capture it again before sending anything more.rig send --help -
Join this session to the team, if that helps:adds this session as a new member of a pod.
rig attach --self --rig <rigId> --pod <pod> --member <name> --runtime <claude-code|codex> --print-envbinds it to an existing seat instead. Attach once, and keep the variables it prints (--node <logicalId>andOPENRIG_NODE_ID). Each command may run in a fresh shell, so put them in front of every laterOPENRIG_SESSION_NAMEcommand. Check withrig.rig whoami --json -
Replies: other agents can't type into this session. Read work sent to you withand
rig queue list --destination <your address>, and read an agent's screen withrig queue show <id> --full.rig capture <seat>@<rig>
- 启动OpenRig: 运行,如果未运行则执行
rig daemon status。rig daemon start和rig preflight不会启动守护进程。启动守护进程的同时会启动OpenRig自身的团队kernel,其operator负责搭建用户的团队。请保持守护进程运行。rig doctor - 向用户展示OpenRig(交接环节): OpenRig运行后,为用户打开OpenRig TUI和operator。先告知用户你即将打开它,然后在守护进程的桌面环境中运行。这是安装或启动OpenRig后的下一步,也是用户后续想要访问代理或OpenRig时的返回方式。无需等待用户询问或特定指令。如果用户表示暂时不需要,将该命令提供给用户供后续使用。该命令会自行打开视图,若已安装herdr则使用herdr,否则使用原生tmux:
rig terminal open saved:kernel --window- Herdr内部(你在Herdr窗格中运行):会将用户的Herdr切换到空间,复用已有的运行中空间。不会打开新窗口,也不会触发macOS权限提示;用户自己的空间仍保留在侧边栏中。
openrig kernel - 在Terminal或Ghostty中: 打开一个与当前窗口大小一致的新标签页或窗口。
- 在Mac上的Claude Desktop、iTerm或VS Code中: 支持时会打开新的Ghostty窗口,否则打开Terminal。仅在这种情况下,运行前需告知用户:如果macOS请求控制该应用,点击“允许”即可。可通过查看当前运行环境。如果输出为
echo $TERM_PROGRAM $__CFBundleIdentifier、herdr或Apple_Terminal,或是ghostty搭配tmux或com.apple.Terminal,则不会触发macOS提示,无需提及。如果是com.mitchellh.ghostty搭配其他终端(iTerm、VS Code),则可能触发提示,需提前说明点击允许即可。tmux - 布局: 列数低于120时,operator占满首页;列数达到120及以上时,仪表盘和operator共享页面。advisor有独立的标签页或tmux窗口。
- Herdr内部(你在Herdr窗格中运行):会将用户的Herdr切换到
然后用一两句话告知用户窗口已打开的位置,以及operator已准备好接收其构建需求。不要列出代理或状态(TUI会显示),也不要建议用户输入命令。保留当前终端。如果OpenRig的提示显示无法确认视图打开状态,直接如实告知。如果已经打开,引导用户查看现有窗口,不要重复打开。仅当窗口无法打开时,是仅仪表盘的降级方案;解释失败原因并协助使用所选的降级方案。Herdr仅在用户可见的终端中显示;将共享TUI切换到不会打开新终端。无界面/SSH场景下的后台运行是合理的结果。仅指定provider的或用于已有的provider工作区,而非首个桌面窗口。
rig tui --shared:terminals--provider herdr--provider cmux- 如果窗口无法打开,或在无界面SSH环境中: 直接告知用户未打开可见终端,请用户在守护进程所在主机上打开新的终端窗口或标签页。在SSH场景下,就是使用已知账号新建一个SSH会话。如果你只知道HTTP守护进程地址,询问用户SSH详情,不要自行编造。然后向用户提供一条完整命令:
- OpenRig输出的命令: 当无法打开窗口时,会说明原因,并在末尾给出
rig terminal open saved:kernel --window和一条命令(使用run:时对应--json字段)。该命令已经包含了已安装的herdr二进制文件路径和守护进程的套接字,或是要附加的会话。直接原封不动转发该命令,不要自行拼接。如果提示要求在Herdr启动后放置视图,在用户启动Herdr后,你自行运行对应的error命令。rig terminal open - 如果没有输出命令: 在的输出中找到
rig ps --nodes --rig kernel --json,获取其operator.agent(绝对不要猜测名称),然后提供命令canonicalSessionName来接入operator的会话。env -u TMUX tmux attach-session -t '=<canonicalSessionName>'
- OpenRig输出的命令: 当
对于其他故障,可查看中“哪些情况会中断安装和OpenRig视图打开”下方的表格,了解原因和后续处理方式。
rig context get reference/getting-started.md#open-the-kernel-conversations- 向operator下达目标: 除非用户已经说明,否则询问用户想要处理的内容、对应的代码仓库和分支。在的输出中找到
rig ps --nodes --rig kernel --json行,获取其operator.agent(绝对不要使用逻辑ID或猜测名称),然后发送:canonicalSessionName或者让用户在operator的窗格中输入目标和文件夹。如果用户之后才提供目标,用同样的方式转发。operator会帮助用户选择符合其登录状态的团队,经用户同意后启动团队,并将目标交给团队负责人。告知用户operator的回复位置,不要自行构建项目。rig send <canonicalSessionName> 'This is the agent that installed OpenRig. The person will answer in your pane. Goal: <goal>. Project folder: <absolute path>. Branch: <branch>.' - 转发operator的问题: operator在自己的窗格中提问,用户可能没有查看。在你交接的每一步之后,用读取其屏幕内容。当operator向用户提问时(比如是否启动该团队?哪个文件夹?选哪个选项?),用operator的原话向用户提问,然后用
rig capture <canonicalSessionName>将用户的回复发回,或者告知用户直接在operator的窗格中回复。与提示或菜单不同,问题不会显示为已停止的席位,因此不要留待后台等待。rig send - 安装完成的标志是operator已就绪且用户正在与其对话;仅守护进程正常运行并不算完成。如果用户希望之后再沟通,尊重其选择,提供准确的连接步骤,并说明与operator的交接仍待完成。
- 查看运行状态: 运行,然后用
rig ps查看某个团队的代理。如果该仓库中已有团队在运行,告知operator。rig ps --nodes --rig <rig> - 在告知就绪前先检查: 运行。如果某个代理停在提示或菜单处,用
rig ps --nodes --rig <rig>读取内容,然后根据屏幕显示的按键回复(rig capture <seat>@<rig>说明了如何发送数字、字母或Escape键),或者询问用户。在发送更多内容前,再次捕获屏幕确认。rig send --help - 如有需要,将当前会话加入团队: 会将当前会话作为新成员加入pod。如果使用
rig attach --self --rig <rigId> --pod <pod> --member <name> --runtime <claude-code|codex> --print-env则会绑定到已有的席位。只需执行一次附加操作,保存输出的环境变量(--node <logicalId>和OPENRIG_NODE_ID)。由于每个命令可能在新的shell中运行,因此后续所有OPENRIG_SESSION_NAME命令前都要加上这些变量。可通过rig检查状态。rig whoami --json - 回复处理: 其他代理无法在当前会话中输入。通过和
rig queue list --destination <your address>读取发送给你的任务,用rig queue show <id> --full读取代理的屏幕内容。rig capture <seat>@<rig>
3. Follow the work to its result
3. 跟进工作直到产出结果
- Find the team's task: the operator gives the goal to the team's lead as a queue task: , or
dev-build@starterinorch-leadandworkshop(for starter and factory,factorysays what each seat does; for a running team,rig specs preview <name> --kind rig). Find it withrig ps --nodes --rig <rig>.rig queue list --destination <seat>@<rig> -a - Follow it to the result: a task that changed hands isn't finished. names the seat it went to, and that seat's next task is the one whose
rig queue show <id> --fullis that ID (handedOffFrom). Follow each handoff until an agent reports the result, and userig queue list --destination <seat>@<rig> -a -o jsonto see what it's doing. Then read what it produced and tell the person what the team actually did (the branch, commit, review or PR text), not just that you sent it.rig capture <seat>@<rig> - Give the team more work: write the goal to a file: what to change, in which repository and branch, what done
looks like, and that the result comes back to you (the branch or commit, the review, any PR text). Then
, and tell that agent with
rig queue create --source <your name> --destination <seat>@<rig> --body-file <file>. A message informs, and a queue task is the work someone owns.rig send <seat>@<rig> "task <id> is yours"names you when this session hasn't joined the team.--source - Then ask what's next. If no team can take the work, fix that or ask the person. Don't quietly do it yourself.
- Other ways to work with the team: types into an agent's terminal,
rig send <seat>@<rig> "..."reads its screen, andrig capture <seat>@<rig>shows who's on it.rig ps --nodes --rig <rig>
- 找到团队的任务: operator会将目标作为队列任务交给团队负责人:starter模式下是,workshop和factory模式下是
dev-build@starter(对于starter和factory模式,orch-lead会说明每个席位的职责;对于运行中的团队,用rig specs preview <name> --kind rig查看)。通过rig ps --nodes --rig <rig>查找任务。rig queue list --destination <seat>@<rig> -a - 跟进直到结果产出: 被转交的任务不算完成。会显示任务被转交到的席位,而该席位的下一个任务就是
rig queue show <id> --full字段为该ID的任务(通过handedOffFrom查看)。跟进每一次转交,直到某个代理汇报结果,并用rig queue list --destination <seat>@<rig> -a -o json查看其当前工作内容。然后读取产出内容,告知用户团队实际完成的工作(比如分支、提交、评审或PR文本),而不仅仅是说你已经发送了任务。rig capture <seat>@<rig> - 给团队分配更多工作: 将目标写入文件:包括要修改的内容、对应的代码仓库和分支、完成标准,以及结果需返回给你(包括分支或提交、评审、所有PR文本)。然后运行,并用
rig queue create --source <your name> --destination <seat>@<rig> --body-file <file>通知对应代理。消息仅作告知,队列任务才是某人负责的工作。如果当前会话未加入团队,用rig send <seat>@<rig> "task <id> is yours"指定你的名称。--source - 然后询问下一步需求。 如果没有团队能承接该工作,解决该问题或询问用户。不要悄悄自己完成。
- 与团队协作的其他方式: 向代理的终端输入内容,
rig send <seat>@<rig> "..."读取其屏幕,rig capture <seat>@<rig>查看团队成员。rig ps --nodes --rig <rig>
4. Find out more
4. 了解更多
- How OpenRig works: .
rig context profile world-public --situation fresh - What you can do: (the capability map).
rig context get onboarding-width - Everything in the library: .
rig context list - Exact syntax: is always current for the installed version.
rig <command> --help
Written for OpenRig 0.6.7. When something here and disagree, wins.
--help--help- OpenRig的工作原理: 运行。
rig context profile world-public --situation fresh - 你可以做什么: 运行(能力地图)。
rig context get onboarding-width - 库中的所有内容: 运行。
rig context list - 准确语法: 始终是已安装版本的最新参考。
rig <command> --help
本文档针对OpenRig 0.6.7编写。若此处内容与输出不一致,以为准。
--help--help