fix(core): spawn shell non-interactively without sourcing rc files

ShellSelect.args() ran zsh/bash with -l and explicitly sourced .zshrc/.bashrc,
loading user functions and aliases that can shadow builtins and return non-zero
exit codes, breaking && chains. Match the old tool behavior: plain non-login
non-interactive shell -c command with cwd passed via spawn options.
This commit is contained in:
Dax Raad 2026-06-29 12:05:34 -04:00
commit 01edae4a7f
4 changed files with 8 additions and 37 deletions

View file

@ -521,7 +521,7 @@ export const layer = Layer.effect(
const cfg = yield* config.get()
const sh = ShellSelect.preferred(cfg.shell)
const args = ShellSelect.args(sh, input.command, cwd)
const args = ShellSelect.args(sh, input.command)
let output = ""
let aborted = false