Description
When running sidecar start --no-ui from a parent process (e.g., Claude Code's Bash tool), the sidecar CLI process completes (summary output emitted, session marked complete or error in sidecar list) but the parent shell process never terminates.
Steps to Reproduce
- Launch sidecar headless from a background shell:
sidecar start --model gemini --agent Plan --no-ui --timeout 20 --prompt "Review this file: some-file.md"
- Wait for the sidecar session to complete (visible in
sidecar list --status complete)
- Check the parent shell process — it's still running
Expected Behavior
Parent shell process exits when sidecar CLI returns.
Actual Behavior
Parent shell process stays alive indefinitely. In our test, 10 out of 10 background sidecar launches became zombies, requiring manual kill/TaskStop.
Impact
When launching multiple sidecars in parallel (the documented multi-LLM pattern), zombie processes accumulate and confuse the user into thinking tasks are still running.
Environment
- macOS Darwin 23.5.0
- sidecar installed via
npm install -g claude-sidecar
- Launched from Claude Code background bash tasks
Description
When running
sidecar start --no-uifrom a parent process (e.g., Claude Code's Bash tool), the sidecar CLI process completes (summary output emitted, session markedcompleteorerrorinsidecar list) but the parent shell process never terminates.Steps to Reproduce
sidecar start --model gemini --agent Plan --no-ui --timeout 20 --prompt "Review this file: some-file.md"sidecar list --status complete)Expected Behavior
Parent shell process exits when sidecar CLI returns.
Actual Behavior
Parent shell process stays alive indefinitely. In our test, 10 out of 10 background sidecar launches became zombies, requiring manual
kill/TaskStop.Impact
When launching multiple sidecars in parallel (the documented multi-LLM pattern), zombie processes accumulate and confuse the user into thinking tasks are still running.
Environment
npm install -g claude-sidecar