diff --git a/crates/goose-cli/src/commands/session.rs b/crates/goose-cli/src/commands/session.rs index 221e007e9f..c3dd7373d4 100644 --- a/crates/goose-cli/src/commands/session.rs +++ b/crates/goose-cli/src/commands/session.rs @@ -55,7 +55,13 @@ pub async fn build_session<'a>( // TODO use systems from the profile // TODO once the client/server for MCP has stabilized, we should probably add InProcess transport to each // and avoid spawning here. But it is at least included in the CLI for portability - let config = SystemConfig::stdio("goose").with_args(vec!["mcp", "developer"]); + let config = SystemConfig::stdio( + std::env::current_exe() + .expect("should find the current executable") + .to_str() + .expect("should resolve executable to string path"), + ) + .with_args(vec!["mcp", "developer"]); agent .add_system(config) .await