From 9826161f42db099e14035949d076970c7aaf1b44 Mon Sep 17 00:00:00 2001 From: Jack Amadeo Date: Thu, 14 Aug 2025 12:35:47 -0400 Subject: [PATCH] fix: hide console window for stdio extensions on Windows (#4085) --- crates/goose/src/agents/extension_manager.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/crates/goose/src/agents/extension_manager.rs b/crates/goose/src/agents/extension_manager.rs index 369727c4..bdbf9a31 100644 --- a/crates/goose/src/agents/extension_manager.rs +++ b/crates/goose/src/agents/extension_manager.rs @@ -77,6 +77,9 @@ impl ResourceItem { } } +#[cfg(windows)] +const CREATE_NO_WINDOW_FLAG: u32 = 0x08000000; + /// Sanitizes a string by replacing invalid characters with underscores. /// Valid characters match [a-zA-Z0-9_-] fn normalize(input: String) -> String { @@ -111,6 +114,8 @@ async fn child_process_client( ) -> ExtensionResult { #[cfg(unix)] command.process_group(0); + #[cfg(windows)] + command.creation_flags(CREATE_NO_WINDOW_FLAG); let (transport, mut stderr) = TokioChildProcess::builder(command) .stderr(Stdio::piped()) .spawn()?;