fix(herdr): host pane clients in the operator's shell - #121
Merged
Merged
Conversation
- stop forcing ZDOTDIR=/var/empty on `herdr pane split` - load the operator's login/interactive startup so the pane resolves the same `opencode` their shell would and returns to a normal shell on exit - wait for the pane output to settle before `pane run` instead of typing on the first line, keeping the retry loop - update the Herdr tests, running docs, and the work-conversations spec - archive the completed fix-herdr-user-shell change
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Convoy forced
ZDOTDIR=/var/emptyonherdr pane splitto make the pane prompt appear fast. That suppressed the operator's shell startup, which caused two problems:opencodeto a different binary than the operator's shell. On Herdr 0.9.0 this surfaced aszsh: killed(SIGKILL 137) when a stale Homebrewopencodeshadowed the operator's~/.opencode/bin/opencode.What changes
ZDOTDIR=/var/empty; the pane loads the operator's normal login/interactive startup.PATH, and per-open env on the split.pane runinstead of typing on the first line; keep the retry loop.docs/running.md, and thework-conversationsspec; archive the change.Verification
bun run typecheck→ exit 0bun test test/opencode.test.ts→ 94 pass, 0 failbun test→ 3402 pass, 0 failopenSessionCommandpath: pane resolves~/.opencode/bin/opencode,opencode --versionreturns 1.18.31 with exit 0,ZDOTDIRunset, normal shell prompt after exit.