From ca51c0c406195d862dc6b7e5943dacc4eaeb98fe Mon Sep 17 00:00:00 2001 From: Marshall Bowers Date: Tue, 6 May 2025 14:07:25 -0400 Subject: [PATCH] agent: Don't render trial upsell when not using the Zed provider (#30029) This PR makes it so we don't render the trial upsell when not using the Zed provider. Release Notes: - Agent Beta: Changed Zed Pro trial upsell to only be displayed when using a model through the Zed provider. --- crates/agent/src/assistant_panel.rs | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/crates/agent/src/assistant_panel.rs b/crates/agent/src/assistant_panel.rs index 12369a82b27e1e32718d2fe7aa57790cc6a95d48..cedf0465374066698b1d454a29310e14e7e775d8 100644 --- a/crates/agent/src/assistant_panel.rs +++ b/crates/agent/src/assistant_panel.rs @@ -27,7 +27,9 @@ use gpui::{ linear_gradient, prelude::*, pulsating_between, }; use language::LanguageRegistry; -use language_model::{LanguageModelProviderTosView, LanguageModelRegistry, RequestUsage}; +use language_model::{ + LanguageModelProviderTosView, LanguageModelRegistry, RequestUsage, ZED_CLOUD_PROVIDER_ID, +}; use language_model_selector::ToggleModelSelector; use project::{Project, ProjectPath, Worktree}; use prompt_store::{PromptBuilder, PromptStore, UserPromptId}; @@ -1806,6 +1808,19 @@ impl AssistantPanel { return false; } + let is_using_zed_provider = self + .thread + .read(cx) + .thread() + .read(cx) + .configured_model() + .map_or(false, |model| { + model.provider.id().0 == ZED_CLOUD_PROVIDER_ID + }); + if !is_using_zed_provider { + return false; + } + let plan = self.user_store.read(cx).current_plan(); if matches!(plan, Some(Plan::ZedPro | Plan::ZedProTrial)) { return false;