From 6394165da687a78c88823e5ba7f817ae54d7111b Mon Sep 17 00:00:00 2001 From: Adrian Cole <64215+codefromthecrypt@users.noreply.github.com> Date: Mon, 9 Mar 2026 10:21:28 +0800 Subject: [PATCH] fix: sanitize streamable HTTP extension names derived from URLs (#7740) Signed-off-by: Adrian Cole --- crates/goose-cli/src/session/mod.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/crates/goose-cli/src/session/mod.rs b/crates/goose-cli/src/session/mod.rs index 62d9736d..49f3a23f 100644 --- a/crates/goose-cli/src/session/mod.rs +++ b/crates/goose-cli/src/session/mod.rs @@ -34,6 +34,7 @@ use completion::GooseCompleter; use goose::agents::extension::{Envs, ExtensionConfig, PLATFORM_EXTENSIONS}; use goose::agents::types::RetryConfig; use goose::agents::{Agent, SessionConfig, COMPACT_TRIGGERS}; +use goose::config::extensions::name_to_key; use goose::config::{Config, GooseMode}; use input::InputResult; use rmcp::model::PromptMessage; @@ -327,7 +328,7 @@ impl CliSession { s.push('_'); s.push_str(path); } - s + name_to_key(&s) }) .filter(|s| !s.is_empty()) .unwrap_or_else(|| "unnamed".to_string()); @@ -2030,7 +2031,7 @@ mod tests { #[test_case( "https://mcp.kiwi.com", 300, ExtensionConfig::StreamableHttp { - name: "mcp.kiwi.com".into(), + name: "mcp_kiwi_com".into(), uri: "https://mcp.kiwi.com".into(), envs: Envs::default(), env_keys: vec![],