TUI open-terminal hard-codes Herdr and ignores a live cmux
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 52/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- typescript
- Domain
- cli
Research direction
Start in TerminalService, where DEFAULT_PROVIDER = "herdr" resolves omitted providers, then check the TUI DaemonClient.openTerminal() call to /api/terminal/open, which sends no provider. Reproduce with rig terminal status --json on a host without a live Herdr. Done when the TUI open-terminal action opens the view through a live cmux when Herdr is unavailable, and the existing herdr_unavailable error with direct-attach guidance still appears when neither provider is live.
Written by the indexing model from the issue text.
Description
🐞 Bug Report: TUI open-terminal hard-codes Herdr and ignores a live cmux
Where: rig tui → a rig's term ▸ / open-terminal action; terminal-provider selection in TerminalService
Reproduce steps
-
Use a host where Herdr is not installed or its control socket is unavailable, while cmux is installed and live.
-
Confirm provider state:
rig terminal status --jsonOn the affected host this reports Herdr
available:false/alive:falseand cmuxavailable:true/alive:true. -
Open
rig tui, select a running rig, and activate itsterm ▸ rig <name>link (theopen-terminalaction). -
Observe the TUI error notice.
The equivalent provider-less CLI reproduction is:
rig terminal open financial-management-team --json
It exits 1 with:
{
"provider": "herdr",
"ok": false,
"opened": [],
"error": "herdr control socket is not answering ping; is herdr running?",
"code": "herdr_unavailable"
}
Current result (before fix)
The TUI's open-terminal path is unusable when Herdr is unavailable, even when cmux is live and can open the same view.
The installed 0.6.6 code path explains the behavior:
- TUI
DaemonClient.openTerminal()posts/api/terminal/openwith{ view, expectedPlan? }and no provider. TerminalServicedeclaresDEFAULT_PROVIDER = "herdr"and resolves omitted providers as Herdr.- It returns
herdr_unavailable; no cmux fallback is attempted. rig config --helpexposesterminal.status_barbut no terminal-provider default key.
The documented setup journey says to use installed Herdr, else cmux, else direct attach commands, but the TUI action cannot express --provider cmux and does not follow that fallback order.
Workaround:
rig terminal open financial-management-team --provider cmux
That command succeeds on this host and opens all four seats.
Expected result (after fix)
Activating open-terminal in the TUI should open the selected view in an available terminal provider. When no provider is explicitly selected, OpenRig should prefer a live Herdr and otherwise fall back to a live cmux. A configurable default provider would also be acceptable if the TUI honors it and unavailable-provider behavior remains clear.
If neither provider is available, retain the current honest failure and exact direct-attach guidance.
Environment
- OpenRig:
0.6.6 (2620dea8) - OS: macOS / Darwin
25.6.0, arm64 - Node:
v24.13.0 - tmux:
3.7c - Claude Code:
2.1.295 - Herdr: not installed / control socket unavailable
- cmux: installed at
/opt/homebrew/bin/cmux; shell and daemon control checks pass rig doctor --json: healthy;cmux_shellandcmux_daemonpass
Documentation consulted
- Installed
rig context get helpfor OpenRig 0.6.6 - Getting-started terminal guidance describing Herdr → cmux → direct-attach fallback
- Dominant language
- TypeScript
- Stars
- 3.1k
- Forks
- 217
- Avg merge
- 9h 1m
- Merged PRs (30d)
- 888
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from mvschwarz/openrig
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
mvschwarz/openrig#154 · 7 comments ·
Maintainers usually reply within 1 day
-
needs-repro
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
mvschwarz/openrig#13 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 4/5 1-2 days Newbie friendliness 55/100
Maintainers usually reply within 1 day
-
A Claude seat that is slow to resume is reported "pane returned to shell" and marked failed while Claude is startingPossibly taken @AdamWhitehurst claimed this today. Open
Difficulty 5/5 Over a week Newbie friendliness 25/100
Maintainers usually reply within 1 day
-
Opening a terminal from the shared TUI fails with hosting terminal "unknown" when the person views it from HerdrPossibly taken @AdamWhitehurst claimed this today. Open
Difficulty 4/5 1-2 days Newbie friendliness 20/100
Maintainers usually reply within 1 day
All issues in mvschwarz/openrig
Similar issues
-
bug engine
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
frostney/GocciaScript#1746 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 67/100
agilepathway/label-checker#739 · 4 comments ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 68/100
CopilotKit/OpenBot#800 ·
Maintainers usually reply within 1 day
-
Endpoint links in the tag operations list are below the 24px target sizePossibly taken @AdzerKI claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 79/100
ehmpathy/rhachet-roles-bhuild#471 ·
Maintainers usually reply within 1 day