Stop spawning ACP/MCP servers with interactive shells#44826
Stop spawning ACP/MCP servers with interactive shells#44826Veykril merged 1 commit intozed-industries:mainfrom
Conversation
|
I am having an issue with the nightly build with Zed. To be more specific, when I launch an external ACP agent (e.g. Codex CLI, or Opencode through extension) from the Agent panel ("+" → “New Thread…” → “Codex CLI”), the thread tab would stay stuck in “Loading…” with the Codex icon blinking indefinitely. In the dev ACP logs we only saw the initial |
…#44826) ### Summary: - Ensure the external agents with ACP servers start via non-interactive shells to prevent shell startup noise from corrupting JSON-RPC. - Apply the same tweak to MCP stdio transports so remote context servers aren’t affected by prompts or greetings. ### Description: Switch both ACP and MCP stdio launch paths to call `ShellBuilder::non_interactive()` before building the command. This removes `-i` on POSIX shells, suppressing prompt/title sequences that previously prefixed the first JSON line and caused `serde_json` parse failures. No functional regressions are expected: both code paths only need a shell for Windows/npm script compatibility, not for interactivity. Release Notes: - Fixed external agents that hung on “Loading…” when shell startup output broke JSON-RPC initialization.
Summary:
Description:
Switch both ACP and MCP stdio launch paths to call
ShellBuilder::non_interactive()before building the command. This removes-ion POSIX shells, suppressing prompt/title sequences that previously prefixed the first JSON line and causedserde_jsonparse failures. No functional regressions are expected: both code paths only need a shell for Windows/npm script compatibility, not for interactivity.Release Notes: