diff --git a/crates/agent_ui/src/agent_configuration/manage_profiles_modal.rs b/crates/agent_ui/src/agent_configuration/manage_profiles_modal.rs index 9e042b8ad66111213231d99098a8122e85e9ef6a..e81c14ca0e5153376a87a79ae0fc87b443dbaea8 100644 --- a/crates/agent_ui/src/agent_configuration/manage_profiles_modal.rs +++ b/crates/agent_ui/src/agent_configuration/manage_profiles_modal.rs @@ -218,6 +218,11 @@ impl ManageProfilesModal { window: &mut Window, cx: &mut Context, ) { + telemetry::event!( + "Agent Profile Default Model Configured", + profile_id = profile_id.as_str(), + is_builtin = builtin_profiles::is_builtin(&profile_id) + ); let fs = self.fs.clone(); let profile_id_for_closure = profile_id.clone(); @@ -314,6 +319,11 @@ impl ManageProfilesModal { window: &mut Window, cx: &mut Context, ) { + telemetry::event!( + "Agent Profile MCPs Configured", + profile_id = profile_id.as_str(), + is_builtin = builtin_profiles::is_builtin(&profile_id) + ); let settings = AgentSettings::get_global(cx); let Some(profile) = settings.profiles.get(&profile_id).cloned() else { return; @@ -350,6 +360,11 @@ impl ManageProfilesModal { window: &mut Window, cx: &mut Context, ) { + telemetry::event!( + "Agent Profile Tools Configured", + profile_id = profile_id.as_str(), + is_builtin = builtin_profiles::is_builtin(&profile_id) + ); let settings = AgentSettings::get_global(cx); let Some(profile) = settings.profiles.get(&profile_id).cloned() else { return; @@ -398,9 +413,16 @@ impl ManageProfilesModal { Mode::ChooseProfile { .. } => {} Mode::NewProfile(mode) => { let name = mode.name_editor.read(cx).text(cx); + let base_profile_id = mode.base_profile_id.clone(); let profile_id = - AgentProfile::create(name, mode.base_profile_id.clone(), self.fs.clone(), cx); + AgentProfile::create(name, base_profile_id.clone(), self.fs.clone(), cx); + telemetry::event!( + "Agent Profile Created", + profile_id = profile_id.as_str(), + is_fork = base_profile_id.is_some(), + base_profile_id = base_profile_id.as_ref().map(|id| id.as_str()) + ); self.view_profile(profile_id, window, cx); } Mode::ViewProfile(_) => {} @@ -421,6 +443,8 @@ impl ManageProfilesModal { return; } + telemetry::event!("Agent Profile Deleted", profile_id = profile_id.as_str()); + let fs = self.fs.clone(); update_settings_file(fs, cx, move |settings, _cx| { diff --git a/crates/agent_ui/src/profile_selector.rs b/crates/agent_ui/src/profile_selector.rs index 2f32d27983589f78c50893bfe0ef00b1aff1501c..5919abbbc977850dce4784f0a39ceee10f220060 100644 --- a/crates/agent_ui/src/profile_selector.rs +++ b/crates/agent_ui/src/profile_selector.rs @@ -95,6 +95,11 @@ impl ProfileSelector { if let Some((next_profile_id, _)) = profiles.get_index(next_index) { self.provider.set_profile(next_profile_id.clone(), cx); + telemetry::event!( + "Agent Profile Switched", + profile_id = next_profile_id.as_str(), + source = "cycle" + ); cx.notify(); } }